WHAT'S INSIDE

Everything you need to build production-ready REST APIs.

.NET 9

Latest features for building modern REST APIs

PostgreSQL

Reliable and scalable database for your APIs

React

SPA client integration for your API

Azure

Cloud deployment & monitoring

01

REST Introduction

Beginner Friendly

Start with a solid foundation in REST principles. Learn about Richardson Maturity Model, API-First approach, and set up your development environment for building robust REST APIs.

1h 5m
6 Lessons
START WATCHING
02

Building REST APIs

Beginner Friendly

Master HTTP methods, status codes, and REST best practices. Learn to implement CRUD operations, handle child resources, validation, searching, filtering, sorting, and pagination.

4h 25m
18 Lessons
START WATCHING
Building REST APIs
03

HATEOAS and Change Management

Intermediate

Implement HATEOAS to make your APIs more discoverable. Learn content negotiation, API versioning strategies, and how to manage API changes effectively.

1h 32m
8 Lessons
START WATCHING
HATEOAS and Change Management
04

Authentication and Authorization

Intermediate

Secure your APIs with token-based authentication, JWT, refresh tokens, and implement role-based and attribute-based authorization. Learn to protect sensitive data and integrate with external APIs.

2h 7m
12 Lessons
START WATCHING
Authentication and Authorization
05

Client Integration

Intermediate

Learn how to integrate REST APIs with client applications. Build a React client, implement batch operations, and use HATEOAS to drive UI behavior. Master OpenAPI client generation for type-safe API consumption.

50m
6 Lessons
START WATCHING
Client Integration
06

Advanced REST API Concerns

Advanced

Take your APIs to the next level with HTTP caching, optimistic locking, cursor pagination, rate limiting, and webhooks. Learn to build resilient and asynchronous REST APIs.

1h 36m
10 Lessons
START WATCHING
Advanced REST API Concerns
07

Testing REST APIs

Intermediate

Master different testing approaches including unit testing, integration testing, and end-to-end testing. Learn to test external services using WireMock and set up automated testing in CI/CD pipelines.

1h 7m
8 Lessons
START WATCHING
Testing REST APIs
08

Documenting REST APIs

Intermediate

Create comprehensive API documentation using OpenAPI/Swagger. Learn to document multiple API versions, authentication flows, and explore modern documentation UI alternatives like Scalar.

34m
7 Lessons
START WATCHING
Documenting REST APIs
09

Deployment and Monitoring

Advanced

Deploy your REST APIs to Azure, manage database migrations, and implement monitoring with Application Insights. Learn to automate deployments using GitHub Actions for a robust CI/CD pipeline.

56m
6 Lessons
START WATCHING
Deployment and Monitoring

More Than Just Theory

Pragmatic REST APIs includes more than just theoretical discussion.

We're going to build a complete REST API from scratch, covering everything from basic CRUD operations to advanced features like HATEOAS, authentication, and automated testing.

The course includes bonus content to help you master modern REST API development.

REST API Case Studies
BONUS COURSE #120m

REST API Case Studies From Successful Companies

Analyze real-world REST APIs from successful companies. Learn from their design decisions, best practices, and implementation strategies.

Building REST APIs With Minimal APIs
COMMUNITY
BONUS COURSE #250m

Building REST APIs With Minimal APIs

Learn how to build lightweight and high-performance REST APIs using .NET Minimal APIs, and see if they're a match for REST.

Integrating Auth0 as the Identity Provider
COMMUNITY
BONUS COURSE #352m

Integrating Auth0 as the Identity Provider

Learn how to integrate Auth0 with your REST APIs for robust authentication and authorization. We'll also cover client integration.

After Completing This Course You Will

  • Build production-ready REST APIs with confidence
  • Implement secure and scalable authentication systems
  • Master REST API testing and documentation
  • Confidently deploy your APIs to production

What Students Are Saying About Pragmatic REST APIs

START WATCHING
Course student
Course student
Course student
Course student
Course student
Course student
4.9/5 from 5,600+ students

Ready to Join Pragmatic REST APIs?

Choose the plan that best fits your needs and start building better REST APIs today.

PRA

$297$197.00

9 in-depth chapters

14+ hours of video content

Bonus: Case Studies

Lifetime access

Lifetime updates

BEST VALUE

PRA + Community

$497$347.00

9 in-depth chapters

16+ hours of video content

Bonus: Case Studies
Bonus: Minimal APIs
Bonus: Auth0 Integration

Lifetime access

Lifetime updates

Community Access

The Full Curriculum

Introduction (10m)FREE PREVIEW

  • Agenda, Your Instructor, Course Structure
  • How To Use This Course

REST Introduction (1h 5m)FREE PREVIEW

  • Introduction
  • Introducing REST
  • Richardson Maturity Model
  • API-First
  • What We Will Build
  • Project Setup

Building REST APIs (4h 25m)

  • Introduction
  • HTTP Methods
  • HTTP Status Codes
  • Designing REST APIs - Best Practices
  • Introducing the Database, EF Core
  • Getting Resources - GET
  • Creating Resources - POST
  • Updating Resources - PUT
  • Partially Updating Resources - PATCH
  • Deleting Resources - DELETE
  • Adding Another Resource
  • Working With Child Resources
  • REST API Validation, Problem Details
  • Exception Handling
  • Supporting Searching and Filtering
  • Supporting Sorting
  • Implementing Pagination
  • Supporting Data Shaping

HATEOAS and Change Management (1h 32m)

  • Introduction
  • Hypermedia As The Engine Of Application State
  • Quick Code Refactoring
  • Implementing HATEOAS
  • Content Negotiation
  • API Versioning
  • Implementing API Versioning
  • API Change Management

Authentication and Authorization (2h 7m)

  • Introduction
  • Authentication in REST APIs
  • Adding the Users Resource
  • Introducing ASP.NET Core Identity
  • Implementing User Registration
  • Token Based Authentication, JWT
  • Supporting Refresh Tokens
  • Protecting Resources: Owner Authorization
  • Role-Based Authorization
  • Advanced Authorization - RBAC, ABAC
  • Integrating With External APIs
  • Protecting Sensitive Data With Encryption

Client (UI) Integration With REST APIs (50m)

  • Introduction
  • Introducing the React Client Application
  • Adding the Entries Resource, GitHub Integration
  • Batch Resource Creation
  • HATEOAS: Driving Client Behavior
  • OpenAPI and HTTP Client Generation

Advanced REST API Concerns (1h 36m)

  • Introduction
  • HTTP Caching
  • Optimistic Locking, Concurrency Control
  • Cursor Pagination
  • Refit - Automatic HTTP Client Generation
  • HTTP Resilience, Polly
  • Rate Limiting and REST APIs
  • Idempotence and REST APIs
  • Webhooks
  • Building Asynchronous REST APIs

Testing REST APIs (1h 7m)

  • Introduction
  • Unit Testing and REST APIs
  • Unit Testing: The Complete Picture
  • Integration Testing REST APIs
  • Testing External Services Using WireMock
  • Integration Testing: The Complete Picture
  • Functional Testing - Creating End-to-End Tests
  • Automated Testing in CI/CD Pipelines

Documenting REST APIs (34m)

  • Introduction
  • OpenAPI Support in .NET
  • Introducing Swagger for Documenting APIs
  • Adding Rich REST API Documentation
  • Documenting Multiple API Versions
  • Documenting Authentication
  • Exploring OpenAPI UI Alternatives - Scalar

Deployment and Monitoring (56m)

  • Introduction
  • Deploying the Client Application to Azure
  • Deploying the Database and Applying Migrations
  • Deploying the REST API to Azure
  • Adding Monitoring With Application Insights
  • Automating Deployments With GitHub Actions

BONUS - REST API Case Studies (20m)

  • Case Study: Patreon API

BONUS - Building REST APIs With Minimal APIs (50m)COMMUNITY

  • Introduction
  • Migrating GET Endpoints - Collection Resources
  • Migrating GET Endpoints - Single Resource
  • Migrating POST Endpoints
  • Migrating PUT Endpoints
  • Migrating PATCH Endpoints
  • Migrating DELETE Endpoints
  • HATEOAS With Minimal APIs
  • API Versioning With Minimal APIs
  • Documenting Minimal APIS
  • Minimal APIs and REST - Pros and Cons

BONUS - Integrating Auth0 as the Identity Provider (52m)COMMUNITY

  • Introduction
  • Auth0 Identity Provider Setup
  • Client Integration With Auth0
  • Assigning Roles to Users With Auth0 Management API
  • REST API Integration With Auth0
  • Testing the Complete Authentication Flow
START WATCHING
Course student
Course student
Course student
Course student
Course student
Course student
4.9/5 from 5,600+ students
Milan Jovanović

WHO'S BEHIND THIS

Hi – I'm Milan Jovanović. I help software engineers improve their .NET and software architecture skills.

I'm a Software Architect and Microsoft MVP for Developer Technologies with years of experience building large-scale systems and APIs.

I've helped thousands of people become better software engineers through my practical tips on social media, The .NET Weekly newsletter, and YouTube channel.

My goal is to teach you everything I learned while building and maintaining production-ready REST APIs (with a dose of pragmatism).

Microsoft MVP Badge.

GOT QUESTIONS?

Frequently Asked Questions

  • Who is this course for?

    This course is for anyone who wants to learn how to build production-ready REST APIs using the latest ASP.NET Core features and best practices.

    You'll learn how to build APIs that are not just functional, but also maintainable, testable, and scalable. We'll even integrate a client app and deploy the API to production.

  • What will I learn in this course?

    You'll learn the core principles of REST APIs and how to apply them in practice. These are the same core principles I've used to build many large-scale systems in the past 8 years.

    • REST Fundamentals
    • REST Best Practices
    • HATEOAS (in-depth)
    • Authentication
    • Authorization
    • Testing
    • Deployment
    • CI/CD

    All the course contents are up to date with .NET 9.

  • How long is the course?

    The core course is 14 hours and 21 minutes long and is a video course. It has a lot of value packed inside, and I designed it to be easy to follow.

    The bonus section contains case studies of real-world APIs from some of the most successful companies in the world. You'll see how they were designed and built, and how they were used to power some of the most popular products in the world.

  • Why is this course different from other REST API courses?

    Unlike other courses that only scratch the surface, this course dives deep into real-world REST API development. You'll learn how to build APIs that are not just functional, but also maintainable, testable, and scalable. We'll also integrate a client app and deploy the API to production.

    The bonus section contains case studies of real-world APIs from some of the most successful companies in the world. You'll see how they were designed and built, and how they were used to power some of the most popular products in the world. You'll also see how they compare to the API we'll build in the course.

  • What does Community Access mean?

    If you purchase the PRA + Community Access plan, you will gain access to the Community section. If you don't want to go through the course alone, it's a great way to enhance your learning experience. The Community is where like-minded engineers like yourself can get together and collaborate. If you get stuck at any point, this is where you will find help. Of course, I'll also be there to answer any questions.

  • Got it. This must be expensive, right?

    No. It's $197 on the basic plan.

    And if you want to have Community access with bonus content, then it's $347.

  • Do I get lifetime access?

    Absolutely, YES! You can access the course forever, including any future updates, with no extra payment.

  • What are the prerequisites for taking this course?

    You should have at least 1 year of experience with ASP.NET Core and (preferably) Entity Framework Core. If you are a beginner, this course will help you improve regardless, but it will be slightly harder to follow. You should also be familiar with Docker, as that is what we will use for running external services.

    The course also includes a client app built with React, so you should at least have Node.js installed to be able to run the client app.

  • What if I get stuck during the course?

    The course is carefully designed to build knowledge progressively, with each lesson building on the previous ones, so the chances of getting stuck are minimal.

    However, if you do need help, the Community Access edition provides direct access to both me and other course participants. You'll be able to ask questions, share your progress, and get help when needed.

  • Is there a refund policy?

    If you're not completely satisfied with your purchase, you can request a full refund by emailing milan [at] milanjovanovic.tech, as long as:

    • The refund is requested within 7 days of the original purchase date
    • You have completed less than 10% of the course
  • Ok. What should I do next if I want to enroll?

    Click the START WATCHING button below and get started today.

START WATCHING

READY TO LEVEL UP?

Unlock Pragmatic REST APIs Today

Join thousands of developers who have already transformed their API development skills with this comprehensive course.

Course student
Course student
Course student
Course student
Course student
Course student
4.9/5 from 5,600+ students
Lifetime Access
14+ Hours of Content
Real-world Examples