
Master rest api design with practical, tool-driven guidance using Postman and Beeceptor; understand why rest api is the defacto web api, its simplicity, and platform support.
Explore the course agenda, introducing API basics, web API, REST concepts, HTTP verbs, URL structure, response codes, documentation, versioning, authentication, performance, and monitoring with Beeceptor and Postman.
An api, or application programming interface, defines the methods of communication among components. It exposes an interface for software to access another's data, with users and orders software publishing api.
Explore the four API types—operating system, library, remote, and web—and learn how each provides services and cross-platform communication.
Explain why APIs are essential for mobile and web apps, enabling backend access, expanding reach through integrations like weather widgets, and enabling monetization with standard, premium, and enterprise access.
Explore web APIs as platform-agnostic, HTTP-based interfaces that use request–response semantics, and compare SOAP, REST, GraphQL, and gRPC, including formats like JSON and XML.
Explore SOAP, the XML-based protocol for remote procedure calls, with an extensible envelope and body that supports authentication, routing, transactions, and federation, while noting its outdated status for legacy systems.
Explore GraphQL, a flexible API design that lets you request exact fields and parameters, subscribe to updates, with JSON input/output, upfront development effort, and performance trade-offs.
Explore the structure of a REST API request by detailing the HTTP method, URL, headers, and optional body, with real-world mapping and examples.
Explore Postman, the popular rest api client, to send requests by setting verb, url, headers, and body, then view the response with body, headers, and status code.
Use Postman to send requests to a REST API, selecting HTTP verbs and crafting URLs. Observe the JSON response and status, and review the raw request in the console.
Learn how the get verb retrieves resources in rest apis, when to use it—and never for create or update—and how browser defaults and url parameters shape its behavior.
Review the summary table of the four rest verbs—get, post, put, delete—and their roles, body usage, and where parameters belong, with get in the URL and post in the body.
identify the api word after the domain name to mark an api endpoint and distinguish it from websites, and explore api placements in domains like google api and beeceptor.
Learn how to version a REST API in the URL using a positive integer, optionally prefixed with v, and see a practical Beeceptor example with /v1.
Learn how rest apis model resources as entities and design simple, verb-free urls using a single word entity name, with http verbs delivering actions.
Use the id parameter in the url to retrieve, update, or delete a specific entity, while new entities lack an id and the database assigns it later.
Discover how sub entities enable accessing dependent resources in REST URLs. Use a readable, hierarchical pattern like /orders/{orderId}/items with GET to fetch items of a specific order.
Learn how to use query parameters in get requests, differentiate them from the ID parameters, and build practical REST API URLs with fromDate, toDate, and startsWith examples.
Choose singular or plural in rest api endpoints based on whether a single entity or multiple may be returned. Prefer readability: use 'order' for one and 'orders' for many.
Design simple, readable, consistent, and predictable API URLs by structuring them with the version and entity, and with optional ID parameter, sub-entity, and query parameter.
Learn how response codes communicate the status of REST API requests, identify success or errors, and guide clients and monitoring tools.
Explore the 2xx success codes, focusing on 200 ok as the default, 201 created for post, 202 accepted for processing, and 204 no content, with get, post, and put behavior.
Examine the 4xx client error codes—400 bad request, 401 unauthorized, 403 forbidden, and 404 not found—and how RFC 7807 enables machine readable problem details.
Explain that a 500 internal server error indicates something went wrong during processing, does not reveal exact details for security, and applies to all request methods (get, post, put, delete).
Explore non-standard HTTP status codes, focusing on WebDAV's 207 multi status, to report per-entity outcomes when handling multiple entities and mixed success in a single response.
Explore OpenAPI, formerly Swagger, the de facto standard for rest api documentation, detailing endpoints, parameters, authentication, and metadata, with a test bed and client libraries in Java, .NET, and Python.
Explore the Swagger format by examining swagger.json, including the info field and a pet POST endpoint, with JSON or XML payloads and a 405 response, and how documentation is generated.
Implement OpenAPI for a web API using Swashbuckle in ASP.NET Core, enable Swagger UI, and generate Swagger JSON automatically while documenting endpoints with XML comments.
Every Software Architect is going to design REST API these days.
REST API is the de-facto standard of the Web API world, and all the major websites are having it - Twitter, Amazon, Facebook, Google and lots and lots more.
If you're designing a web app - the developers using it will expect it to have a REST API.
But, how can you make your REST API stand out? How can you convince the API users to actually use the API, and not just take a quick look at it and go away?
In today's world, where everyone expose REST API, it's not easy to attract developers. And if no developer will come - usage and monetization will be a problem.
The key to make your API stand out is to design a well thought-of API, one that is:
1. Easy to use
2. Easy to understand
3. Consistent
4. Performant
5. Just Works
A good Software Architect must be able to design such an API. In fact, designing the API is one of the most important tasks of the Software Architect.
In this comprehensive course, you'll get all the knowledge required for designing great, professional, REST API, using the techniques used by all industry-leading APIs.
Here are some of the topics discussed in this course:
- What is API, and what is Web API
- The inner structure of REST Request and Response
- Tools that can help you simulate REST API calls, such as Postman and Beeceptor
- The special role of HTTP Verbs
- How a REST API URL should look like
- What are Response Codes and why do they matter
- How to give your API a professional looking documentation
- How to add authentication and authorization to your API
- Performance techniques to improve your API responsiveness
- Monitoring and its importance
- And lots more...
But that's not all...
At the end of this course, you'll be able to download the REST API Checklist, a comprehensive checklist that will guide you through the process of creating the most professional and attractive REST API. This checklist is your go-to-guide whenever you'll design REST API, and as a Software Architect - you'll design a lot of REST API...
This course takes you from the absolute basics of API to the most advanced topics, known only to few. Completing this course will give you all the knowledge required for building professional REST API, and, as a bonus, will put you in a great position when looking for your next job.
No other course covers this topic in such a comprehensive and thorough way. I've put all my 20+ years of experience with hundreds of clients in this course, and I'm sure you will greatly benefit of it.
------------------------------------------------------------
What do my students have to say about my courses?
------------------------------------------------------------
"well done - The course was very practical" - Sam
"Good explanation on the topics covered, "Soft Skills" section is a great addition of topics" - Sergio
"[The course] given me the confidence to go out to the market and advertise myself as such [an Architect]" - Mathew
"Life Changing" - Arivazhagan
And lots more...
------------------------------------------------------------
Who is this course for?
------------------------------------------------------------
Any person who is involved in web development, even system analyst, can profit from this course.
That includes:
- Junior developers
- Senior developers
- Architects
- Anyone else involved in web development
If you're not sure if this course is for you - drop me a note!
------------------------------------------------------------
What are the prerequisites for this course?
------------------------------------------------------------
In this course we'll use tools simulating REST API server and client (Beeceptor and Postman), so no actual coding is required.
Students are expected, however, to be able to understand simple coding snippet (there are a few), and to know how the internet is working (HTTP protocol, Request / Response model, and so on).
------------------------------------------------------------
About Me
------------------------------------------------------------
I've been in the software industry for more than 20 years, and a Software Architect for more than 17 years, working with a variety of clients - Fortune 100 enterprises, start-ups, govt. entities, defense, telco, banking, and lots more.
I'm an avid speaker and trainer, having trained thousands of students in various courses.
I love what I do, and my greatest passion (well, besides my family...) is designing modern, practical, and reliable systems for my clients, using the best possible API.