RESTful API Design

Design APIs like a Pro


Looking for Best Practices for RESTful APIs?

This course is for you! Why? Because this course is packed with practical experience on what works best for RESTful API Design.


You want to design APIs like a Pro?

Use API description languages to both design APIs and develop APIs efficiently. The course introduces the two most common API description languages RAML, OpenAPI, and Swagger.


Your company cares about its customers?

Learn API product management with a customer-centric design and development approach for APIs. Learn how to manage APIs as a product and how to follow an API-first approach. Build APIs your customers love!


You want to manage the complete API lifecycle?

An API development methodology is proposed to guide you through the lifecycle: API inception, API design, API development, API publication, API evolution, and maintenance.


You want to build APIs right?

This course shows best practices for REST design, such as the correct use of resources, URIs, representations, content types, data formats, parameters, HTTP status codes, and HTTP methods.


Your APIs connect to legacy systems?

The course shows best practices for connecting APIs to existing backend systems.


Your APIs connect to a mesh of microservices?

The course shows the principles for designing APIs for scalable, autonomous microservices.


You expect lots of traffic on your API?

The course shows you how to achieve high performance, availability, and maintainability.


You want to build APIs that last for decades?

We study API versioning, API evolution, backward- and forward-compatibility and show API design patterns for versioning.

Select a pricing plan and sign up

Hi, I’m Matt

I am the teacher of the RESTful API Design course and will guide you through the lectures.

I am a techie at heart with a background in APIs, AI, security and software engineering. At some point, I got a Ph.D.

Nowadays, I use my technical background to help companies define their digital strategy, execute their transformation agendas, and bring innovations to the market. 

So what is API Design?


Any type of design requires taking well-informed decisions. The decisions are intended to make the product better in some way, e.g. provide more functionality, provide better quality or a better user experience. Better design decisions typically lead to better products. This is no different when designing APIs. Which design decisions are there for APIs? We see four groups of design decisions.


Architectural Design Decisions

When designing an API, decisions have to be made regarding architectural issues, such as the patterns and the styles to be used. Should the API follow the REST or SOAP architectural style? These design decisions are foundational and have an impact on all following decisions.


API Frontend Design Decisions

Since the frontend of the API is visible to the API consumers (= customers of the API), frontend design decisions are quite critical for the success of an API. Frontend design for APIs is typically RESTful design. For RESTful frontend design we need to answer questions such as: How does the URI of the API look like? Are the parameters passed in the form of query parameters or path parameters? Which headers and status codes should be used?


API Backend Design Decisions

The functionality of the API depends on leveraging data and services of backend systems. Backend design decisions address the connection between API and backend. Design decisions regarding the integration, transformation, aggregation, security and error handling of the backend have an impact on the functionality of the API.


Non-functional design decisions

The architectural, frontend and backend design decisions are primarily taken to craft the functionality of the API. However, these decisions also have an impact on the non-functional properties of the API, such as security, performance, availability, and evolvability. Non-functional properties of the API should not be an afterthought. The API needs to be designed right from the start to fulfill non-functional requirements.


In this course, we address all four groups of design decisions for APIs. The focus is, however, on REST and the API frontend design decisions.

Select a pricing plan and sign up

Course Curriculum

  Welcome
Available in days
days after you enroll
  APIs
Available in days
days after you enroll
  API Economy
Available in days
days after you enroll
  API Qualities
Available in days
days after you enroll
  API Architecture
Available in days
days after you enroll
  REST
Available in days
days after you enroll
  REST Resources and Representations
Available in days
days after you enroll
  REST Methods
Available in days
days after you enroll
  REST Parameters
Available in days
days after you enroll
  REST Status Codes
Available in days
days after you enroll
  REST Media Types
Available in days
days after you enroll
  Wrapping up
Available in days
days after you enroll

Select a pricing plan and sign up


This course is for you...

...if you want to improve your market value as a Software Engineer. Imagine what could happen to your professional career if you could add RESTful API Design skills to your CV! 


Do you want to start out on your own, as an entrepreneur, consultant or freelancer?  

API experts and engineers who understand REST are in HIGH DEMAND, as companies expand their digital business. Plenty of opportunities are waiting for anyone who has the right skills.


Do you want to take the next step in your career development? 

You may have seen that colleague of yours taking on several new and exciting projects, why can't you. You most probably can. Just make sure you have the necessary skills.


Do you want to build exciting solutions with the next generation technology? 

Whether you are a web developer, mobile developer or API developer, an architect or embedded developer for the Internet of Things, today you need to know RESTful API design to build state of the art solutions.