Skip to main content
Cell phone projecting apps

Designing, Building and Integrating RESTful API | SEQA.X407


Databases, websites, and business applications need to exchange data. This is accomplished by defining standard data formats such as Extensible Markup Language (XML) or JavaScript Object Notation (JSON), as well as transfer protocols or Web services such as the Standard Object Access Protocol (SOAP) or the more popular Representational State Transfer (REST). Developers often have to design their own Application Programming Interfaces (APIs) to make applications work while integrating specific business logic around operating systems, languages or servers. This course introduces these concepts with a focus on the RESTful API.

The course also introduces the data exchange mechanism and common data formats. For Web exchange, you will learn the HTTP protocol, including how to use SOAP with XML. The course compares SOAP and REST, then covers the concepts of stateless transfer. It introduces software API design and best design practices. The second half of the course focuses on RESTful API design and implementations using Python Django, the most popular web development framework. You will learn how to build and consume RESTful services using JSON and XML, and integrate RESTful API with different data sources through hands-on coding projects. Through four coding assignments, which form the course project, you will apply what you have learned to implement a Single-Page Application (SPA) with both the front-end (provided by the instructor) and the Django-based backend with REST web service.

This course is intended for software developers who use data in projects. It is also useful for data professionals who need to understand the methods of data exchange and how to interact with business applications.

Learning Outcomes
At the conclusion of the course, you should be able to

  • Develop RESTful services and their clients using Python Django
  • Apply RESTful API design best practices to real-world software solution including integration
  • Demonstrate API design skills using real-world use cases and review of APIs

Skills Needed

Python programming experience is required for the exercises and the project.

Have a question about this course?
Speak to a student services representative.
Call (408) 861-3860
FAQ
ENROLL EARLY!
This course is related to the following programs:

Prerequisite(s):

Estimated Cost: $760

Course Availability Notification

Please use this form to be notified when this course is open for enrollment.

Contact Us

Speak to a student services representative.

Call (408) 861-3860

Envelope extension@ucsc.edu