Designing RESTful APIs: Learn to Design API from Scratch
What you'll learn
- Overview of RESTful APIs and its benefits. You will learn about RESTful API from scratch. You will know why you need to design an API.
- Understanding the structure of a professionally written API. You will grasp the structure of it and become an expert in designing an API.
- Step-by-step instructions for designing a RESTful API. You will learn to design a new API from scratch.
- Design API resources and associations between them. Know how to design the resource including naming convention, relationship between APIs, etc.
- Designing API operations. Master the ideal usage of HTTP GET, POST, PUT, DELETE, and PATCH operations.
- Design the API requests and responses for each of the common HTTP operations. Includes designing error message formats to follow in your projects.
- Designing for filtering, pagination, and sorting.
- Design API versioning methods that you can employ to track the changes you make to the APIs.
- Lots of Downloadable PDFs: Designing RESTful API Quick Guide, HTTP Status Codes Cheat Sheet.
- Practice assignments to apply your learning from this course. You will feel comfortable starting working on real-life projects.
- Basic knowledge of APIs will be helpful (not mandatory). You will learn every part of designing these APIs step-by-step from scratch in this course.
Enrolled Students Review
"Halfway through the course, and I am content so far. He's taking his time to patiently explain the various concepts as we go through the course. So far, he's pretty clear in his explanations and what we are covering." — Jack Jarvis
"A lot of this course I knew, but the document was what put it into perspective. Very good course or Review for anyone. I highly recommend this… "— Lawrence Thurman
"A very comfortable course with a summary to revise the concepts. a must to take for the designer/developer to write the specifications before writing code. Learned a lot." — Samuel Wong.
"I like how carefully the author has chosen the text." — Riccardo Gamberini.
"Very methodically explained each topic step-by-step with full details. I am enjoying the course." — Suraj Kumar.
"Simplicity explaining. Easy to understand. Recommend this course" —Wanlop Sinthupakom.
"A nice course that explains the principles of Restful Design without boring or further ado. It may be even shorter, but it is possible to easily skip the places you find unnecessarily long and just read the slides and still understand the content of the lecture from the slides." — Ahmet Karahan
Course Update History
Aug 2022: *NEW* Added downloadable Postman Collection file that can be used as a reference while taking this course.
Aug-2022: *NEW* Rolled out the new version of the downloadable resource Designing RESTful API Quick Guide v1.2.pdf.
Jan-2022: *NEW* Added practice activities for API overview and API Resources related sections.
Sep-2021: *NEW* Released Designing RESTful API Quick Guide v1.1.pdf downloadable resource that supports endpoints for associations.
Mar-2021: Initial version
A well-designed API will be your best friend. On the other hand, a lousy API will lead to recurring problems that require continuous updates and support. Hence, it would be best if you designed the API well before you start to implement or share it with other stakeholders.
The usage of API has dramatically increased in recent times, especially for cloud-native applications. Microservices have become mainstream that exposes their services through API endpoints. You will learn how to design an API from the requirements through a step-by-step approach. I've also included the companion sheets you can use whenever you need to create an API at your work.
My name is Praveen, and I am your instructor for this course! I had worked for about ten years in Honeywell, wherein I'd transitioned from Software Engineer to Senior Software Engineer, Tech Lead, and so on in C#. I'm a Certified ScrumMaster (CSM) and Scrum Master for a Security R&D team for the past 5+ years. Moreover, I've published dozens of courses and taught over 1000's students on various software development topics.
Topics Covered In This Course
Overview of RESTful APIs and their benefits. You will learn about RESTful API from scratch without prior knowledge. You will know why you need to design an API.
Understand the structure of a professionally written API. You will grasp its form and become an expert in designing an API.
Step-by-step instructions for designing a RESTful API. You will learn to create a new API from scratch.
Design RESTful API resources and associations between them. Know how to design the resource, including naming convention, the relationship between APIs, etc.
Design RESTful API operations. Master the ideal usage of HTTP GET, POST, PUT, DELETE, and PATCH operations.
Design API requests and responses for each of the standard HTTP operations. Includes designing error message formats with the exact structure to follow in your projects.
Design for filtering, pagination, and sorting.
Design API versioning methods that you can employ to track the changes you make to the APIs.
Lots of Downloadable PDFs: Designing RESTful API Quick Guide, HTTP Status Codes Cheat Sheet, etc
Practice assignments to apply your learning so that you grasp all the concepts you learned in this course. You will feel comfortable starting to work on real-life projects.
& Many More!
More Reasons To Take This Course
APIs are consuming the entire world in every field.
RESTful APIs are the 1st choice among API developers while working with APIs.
Get ahead of the curve and learn to design first before implementing API.
Each lesson in this course is bite-sized, easy to learn, and finished.
Uber and Airbnb use APIs to enhance their product portfolios and remain the top leader in their respective segment.
This course provides over 5 hours of content along with practice activities. To help you better, it follows a step-by-step approach to designing a RESTful API from scratch.
At The End Of This Course
You will know to design a RESTful API from scratch.
You will be able to design and write down each element of the API in a way that is extremely clear and looks professional.
Who Is This Course For?
API Developers, beginner or experienced, who work with APIs. You are involved in either design or development of web services. This course will provide a strong foundation for RESTful design concepts for API development.
Basic knowledge of APIs will be helpful but not mandatory. In this course, you will learn about designing these APIs from scratch.
What Do You Get When You Enroll In This Course?
Lifetime access to the course and all future updates to the course content
Personalized support and answers to your questions
Udemy certificate of completion
30-Day 100% money-back guarantee
Who this course is for:
- API Developers, beginner or experienced, who work with APIs. You are involved in either design or development of web services. This course will provide you with a strong foundation for RESTful design concepts for API development.
Praveen worked for ten years at Honeywell and six years in the security domain, designing and developing products based on the .NET stack. Praveen holds one patent and presented two papers.
Check out the learning path for my courses on Udemy below. If you are interested in any of them, click the relevant course link below this bio.
API Development Path:
Course 1: Designing RESTful APIs: Learn to Design API from Scratch
Course 2: OpenAPI Specification for Software Developers
Course 3: Swagger Tools for API Developers
Course 4: Hands-on ASP.NET Web API
Course 5: Hands-on .NET Web API Documentation with Swagger/OpenAPI.
Course 6: The Ultimate YAML Course - Learn YAML from Scratch
Course 7: Postman Tutorial: Getting Started with API Testing
Course 1: Scrum: An Overview
Course 2: Getting Started with Scrum
C# Development Path:
Course 1: C# Basics for Absolute Beginners
Course 2: C# Object-Oriented Programming (OOP) for Beginners
Course 3: C# LINQ Essentials
Course 4: Visual Studio Code for C# .NET Developers
Course 5: What's New in .NET 6 and C# 10
Programming Fundamentals Path:
Course 1: Fundamentals of Programming using Flowchart and Pseudocode