Web API with ASP.NET Core is a course in building REST APIs with ASP.NET Core 10, from REST principles and database access through EF Core to validation, OpenAPI documentation, JWT security and testing before release. It suits C# and backend developers who need to expose data to web front ends, mobile apps or other systems in a clean, secure way.
Web APIs sit at the heart of modern systems, serving single-page web apps, mobile apps, back-office services and integrations between organisations. A well-designed API speaks plain REST, validates data before saving it, reports errors in one consistent format, ships with documentation other teams can use straight away, and is secure enough to open to outside systems. ASP.NET Core on .NET 10 now has all of these tools built in.
This course takes learners through building web APIs with ASP.NET Core 10, starting with REST, HTTP methods and status codes, creating a controller-based project and connecting SQL Server through EF Core 10. Learners then build endpoints that retrieve, search, filter, page, add, update and delete data, with validation and ProblemDetails. The course goes on to built-in OpenAPI documentation, Minimal APIs, JWT authentication, versioning, rate limiting, caching and integration testing, and closes with a workshop that builds a complete API and runs it in Docker. (2 days, 6 hours per day, 12 hours in total, Intermediate level.)
What you’ll gain
Explain the structure and patterns of REST, HTTP methods and status codes correctly
Create an ASP.NET Core 10 Web API project with controllers, routing and model binding
Connect SQL Server with EF Core 10 and build APIs for CRUD, searching and paging
Validate input and report errors in a standard format with ProblemDetails
Generate built-in OpenAPI documentation and write Minimal APIs
Protect APIs with JWT bearer authentication, authorisation policies, CORS and rate limiting
Write integration tests and run the API in Docker
Who this course is for
C# developers who need to build web APIs for websites, mobile apps or other systems
Developers on older ASP.NET versions who want to move to ASP.NET Core 10
Backend developers who must expose system data to other departments or partners
Frontend and mobile developers who want to understand and build .NET APIs themselves
Anyone who wants a structured understanding of how REST works
Prerequisites
C# programming, such as classes, methods, lists and basic async/await
A basic understanding of how the web and HTTP work
Basic SQL such as SELECT, INSERT, UPDATE and DELETE
A laptop that can run the .NET 10 SDK and Docker Desktop, with permission to install software
Curriculum
Course Details
This course is the 2026 edition of Web API with ASP.NET Core, rewritten from scratch and updated for .NET 10 and ASP.NET Core 10. It runs for 2 days, 6 hours per day (12 hours in total, 09:00-16:00), as lectures with labs built on a single product and order API throughout. Intermediate level. It focuses on building web APIs, unlike the ASP.NET Core MVC course, which centres on web apps with user interfaces. All examples use C#. Every tool is free and every lab runs on the learner's own machine with Docker. Learners take home a lab guide, source code for every lab and docker-compose files for SQL Server 2025.
Day 1REST and Building a Web API on a Database
Section 1: REST Fundamentals
What REST is, thinking in resources and designing meaningful URLs
HTTP methods: GET, POST, PUT, PATCH and DELETE, and idempotency
Common status codes in REST APIs and when to use each one
JSON, headers, content negotiation and statelessness
Lab: analyse and design the endpoints of a product and order system
Section 2: Lab: An ASP.NET Core 10 Web API Project and Routing
.NET 10 LTS and creating a controller-based project with dotnet new webapi
Program.cs, the middleware pipeline, dependency injection and user secrets
The ApiController attribute, attribute routing and route constraints
Binding from the route, query string, headers and body, and returning ActionResult<T>
Lab: run your first API and test it with an .http file in the IDE
Section 3: Lab: Connecting a Database with EF Core 10
Run SQL Server 2025 Developer Edition with Docker
Create code-first entities and a DbContext with relationships
Register the DbContext and keep the connection string safe
Create the database with migrations and seed sample data
Separate entities from DTOs so the database schema does not leak out of the API
Section 4: Lab: Retrieving, Searching and Paging Data
List and single-item endpoints, returning 404 when nothing is found
Filtering, searching and sorting from the query string
Offset paging that also returns the total count
Projection with Select, AsNoTracking and async all the way down
Configuring JSON with System.Text.Json, such as field naming and enums
Section 5: Lab: Creating, Updating, Deleting and Validation
POST returning 201 Created, PUT, PATCH with JSON Patch and DELETE returning 204
Validation with data annotations and automatic 400 responses from ApiController
Business rules in a service layer and returning Conflict for duplicates
Standard error responses with ProblemDetails and a central exception handler
ExecuteUpdate and ExecuteDelete for changing many rows at once
Day 2Documentation, Security and Production Readiness
Section 6: Lab: OpenAPI Documentation and Minimal APIs
Generate a built-in OpenAPI document with AddOpenApi and MapOpenApi
Describe endpoints with XML comments and try them in Swagger UI or Scalar
Minimal APIs compared with controllers, and when to choose each
MapGroup, TypedResults and built-in Minimal API validation, new in .NET 10
Lab: rewrite the product category API as a documented Minimal API
Section 7: Lab: Protecting the API with Authentication and Authorisation
How authentication differs from authorisation
JWT bearer authentication and token validation
ASP.NET Core Identity and the Identity API endpoints for issuing tokens
Roles, claims and authorisation policies
Configuring CORS so web apps on other domains can call the API safely
Section 8: Versioning, Rate Limiting and Caching
API versioning with the Asp.Versioning packages
Rate limiting middleware to stop clients calling too often
Output caching and HybridCache for frequently read data
Health checks and logging with ILogger
A security checklist before opening an API to the outside world
Section 9: Lab: Testing and Consuming the API
Unit tests for the service layer with xUnit
Integration tests with WebApplicationFactory and a test database
Calling the API from .NET apps with IHttpClientFactory and typed clients
Handling timeouts and retries when calling external services
Section 10: Workshop: Building and Deploying a Complete API
Brief: a meeting room booking API or a business system of the learner's choice
Design the resources, DTOs, validation and access rules
Use an AI assistant to help write code, and review the result before using it
Build a container image with dotnet publish and run it with SQL Server in Docker Compose
Present the work and wrap up with next steps
Schedule & training options
For individuals — public rounds
No public rounds are open right now. Join the waiting list and we will contact you first when the next round opens, or ask us on LINE. Or call 02-570-8449 or 088-807-9770
What is a REST API and how is each HTTP method used?
REST is a way of designing APIs that treats data as resources, each with its own URL, such as /api/products and /api/products/5. HTTP methods state the action: GET reads, POST creates, PUT replaces, PATCH partly updates and DELETE removes. The server replies with meaningful status codes such as 200 OK, 201 Created, 400 Bad Request and 404 Not Found, usually sends JSON and keeps no client state between requests.
How do you get started building a web API with ASP.NET Core 10?
Install the .NET 10 SDK and create a project with dotnet new webapi, or choose the ASP.NET Core Web API template in Visual Studio. The generated Program.cs registers services and exposes an OpenAPI document with AddOpenApi and MapOpenApi. Then add a model and a controller marked with ApiController, or write Minimal API endpoints with MapGet and MapPost. Run it with dotnet run and test with an .http file or Postman. When you need real storage, connect a database through EF Core 10.
How do you validate incoming data in an ASP.NET Core Web API?
Add data annotations to the model, such as Required, StringLength, Range and EmailAddress. When the controller has the ApiController attribute, the model is validated automatically and invalid data gets a 400 Bad Request in ProblemDetails format listing the faulty fields. Minimal APIs in .NET 10 can turn on built-in validation too. For more complex rules, such as checking whether a product code already exists, validate in the service layer and return BadRequest or Conflict as appropriate.
Who is the Web API with ASP.NET Core course for, and what should I know beforehand?
It suits C# and backend developers who need to build web APIs for websites, mobile apps or other systems, and developers on older ASP.NET versions moving to ASP.NET Core 10. You should be able to program in C#, understand the basics of HTTP and write basic SQL.
What will I be able to do after the Web API with ASP.NET Core course?
You will be able to design APIs along REST lines and build ASP.NET Core 10 web APIs on SQL Server through EF Core 10 that retrieve, search, page, add, update and delete data, with validation, ProblemDetails, OpenAPI documentation and JWT protection, then test them and run them in Docker. Participants who complete the training receive a Certificate of Completion with its own number, which can be verified online.
Can the Web API with ASP.NET Core course be run in-house for our team?
Yes. It can be run in-house for your team, with examples adapted to your own work, such as designing APIs around the data or systems your team needs to expose to others. You can request a quotation from this page, or contact us on LINE @itgenius or by phone on 02-570-8449.
Many in-house business systems need three things at once: a well-designed central database, web pages where staff can enter and search data, and form-style reports that can be printed or exported to PDF and Excel. Microsoft's stack covers all of this with…
ASP.NET Core is Microsoft's main framework for building web applications and APIs on .NET, and it runs on Windows, macOS and Linux. Today .NET 10 is the LTS release that organisations choose for the long term, yet many books and code samples still follow the…
Modern web applications usually separate the frontend from the backend: the backend exposes a Web API and the frontend is a single page application that calls it. ASP.NET Core on .NET 10 (LTS) is a robust choice for enterprise APIs and runs on Windows, macOS…