
Begin your journey into RESTful APIs with dotnet core, learning from scratch how to build an e-commerce API in a beginner-friendly course.
Build a single API for your watch store to connect web, mobile, and partners, protecting your database while enabling actions like show watches, add to cart, and place orders.
Explore how an API acts as a messenger between software systems, using a waiter and kitchen example and a weather app querying a third-party service.
Contrast traditional web apps with REST APIs that return JSON for client-side rendering, using a buffet analogy where servers supply ingredients and clients compose the plate.
Create an ASP.NET Core Web API project in Visual Studio using the Web API template. Name it Watch Store API, choose version nine, and enable a controller based approach.
Explore the project structure in Visual Studio, including solution explorer, connected services, dependencies, launchSettings.json, app settings json, and program.cs, plus notes on Azure deployment and Postman testing.
Create a dedicated models folder in the web api project and add a product class with id, name, description, and price properties using the snippet, paving the way for lessons.
Learn how to create a web api controller in ASP.NET Core, decorate actions with http get, http post, and http delete attributes, and apply attribute routing to a products controller.
Learn to implement CRUD operations in an ASP.NET Core Web API by building get, post, put, and delete methods on a static products list, with testing via Postman.
Learn how entity framework core, an orm, automatically creates databases and tables using dbcontext and dbset, translates linq into sql, and compares code first and database first approaches.
Explain code first and database first approaches in Entity Framework, showing code first creates a database from C# models, while database first designs it manually; the course uses code first.
Install and configure the Entity Framework Core and SQL Server NuGet packages to connect your Web API to a database, enabling data retrieval via Entity Framework.
Connect your web api to sql server using entity framework code-first, defining a Dbcontext with Dbset properties.
Register the API DbContext as a service in program.cs, configure a SQL Server connection string for Entity Framework, and connect the API to the watch store db.
Explore code-first migrations in ASP.NET Core, install EF Core tools, add an initial migration, and update the database to create a products table with id, name, description, and price.
Access the API DbContext to perform full CRUD operations on the products table, including get all, get by id, add, update, and delete with save changes.
compare synchronous execution where each method waits for the previous, with asynchronous calls that let the third method return the text while the image loads.
Explore why async programming boosts scalability in restful APIs by freeing threads during database input/output operations, reducing request delays under high concurrency, and not improving raw performance.
Implement asynchronous REST APIs by applying async and await across controller methods, converting to Task or Task<T>, and using ToListAsync, FirstOrDefaultAsync, AddAsync, and SaveChangesAsync.
Explore HTTP status codes overview for restful APIs from 1xx to 5xx, including 200 ok, 201 created, 404 not found, and 500 internal server error, and how they identify problems.
Learn to implement http status codes in an ASP.NET Core Web API by returning 200 ok, 201 created, and NotFound using Task<IActionResult>.
Test HTTP status codes in an ASP.NET Core REST API by running the project, sending post, get, put, and delete requests in Postman, and observing 201 and 200 responses.
Build restful APIs for a watch store app, including sign up, sign in, category browsing, product details, cart, place order, filters, search, and settings with order history.
Identify six tables and map their one-to-many relationships. Explain foreign keys: category ID in products, product ID in shopping cart items, and user ID in orders.
Learn to design restful routes and endpoints for the Watchtower application using ASP.NET Core, building controllers for users, categories, products, cart items, and orders with role-based access.
Define models for users, categories, products, shopping cart items, orders, and order details. Use EF conventions to create one-to-many relationships with navigation properties and foreign keys.
Register DbSet properties for users, shopping cart items, categories, orders, and order details in the api DbContext, then create the initial migration and update the database with EF Core.
Implement a categories controller with CRUD actions in ASP.NET Core, using a DbContext, dbset access, and async methods to get, create, update, and delete categories.
Run the application, test the categories endpoint with postman, and perform post, get, put, and delete requests to manage category data and its product collection.
Learn to enable file uploads in an ASP.NET Core Web API by updating the products controller and using form data with an image file, storing image paths outside the database.
Learn to handle file storage and retrieval in an ASP.NET Core REST API by uploading images, generating unique file names, saving to a route, and returning clean image URLs.
Learn how to handle image files in put and delete operations by updating product records with form data, replacing old images, and deleting images when records are removed.
Seed the products table data in an ASP.NET Core REST API by Postman or SQL scripts, then verify data with a get request and image URL handling.
Learn how paging slices large data sets for web APIs using back-end implementation in asp.net core, including scroll and button paging patterns used by major websites.
Implement pagination in a RESTful API by using page number and page size with the skip and take pattern to fetch specific database records, including defaults and query parameters.
Add filtering to the RESTful API using query parameters for material, gender, min and max price, and category id; build dynamic queries with where clauses.
Implement a powerful full-text search in an ASP.NET Core API by filtering products by name or description, using a get method with a search parameter and case-insensitive matching.
Explore how authentication verifies identity and authorization defines access in secure web APIs, illustrated by a library card analogy for ASP.NET Core and beyond.
Implement the register method in the users controller using the API DbContext to check for existing users by email, add the new user, and return 201 created at API/users/register.
Hash the password during user registration using the built-in ASP.NET Core Identity password hasher, which uses PBKDF2 with salt to replace plain text with a secure, non-reversible hash.
Learn how JSON Web Tokens (JWT) securely transmit information between client and server as an open standard. Examine the header, payload with claims and expiration, and the signature.
Install the jwt bearer nuget package and configure appsettings.json with a jwt section, including key, issuer, and audience set to your web api route URL, to enable token issuance.
Configure JWT bearer authentication in program.cs using issuer, audience, and key from appsettings, and ensure app.UseAuthentication runs before app.UseAuthorization to enable secure access.
Implement a login post method in ASP.NET Core that accepts a login request with email and password, verifies the user, and issues a JSON web token with issuer and audience.
Generate a json web token by posting login credentials to the login endpoint in postman, then use the jwt to access protected resources.
secure routes with the authorize attribute and a bearer access token to access protected resources, demonstrated on categories and products controllers using json web tokens.
Implement role based authorization by adding a role to users. Use admin roles to restrict post, put, delete on categories and products; get remains accessible with a token.
Create a shopping cart items controller with a post method at api/shopping cart items/add to add and update items by product and user.
Implement a put method in shopping cart items controller to update a cart item by product id and action via query, using JWT to identify user, then adjust the total.
Learn to implement a get shopping cart items endpoint in ASP.NET Core, returning cart and product data for the authenticated user with selective fields.
Implement a delete endpoint to remove a complete product from the shopping cart by product id, via api/shopping cart items/remove/{productId}, returning ok with 'record deleted' after saving changes.
Are you tired of boring, outdated and incomplete Web API courses that leave you more confused than skilled?
Then welcome — you’ve just found the latest, cleanest, and most complete guide to building real-world REST APIs with ASP.NET Core (.NET 9) & C#.
My name is Asfend, Microsoft Most Valuable Professional (MVP), and in this course, I’ll teach you EVERY single aspect of creating RESTful Web APIs — step by step, from absolute basics to real-world deployment.
There are hundreds of tutorials online…
But none of them show you how to build a complete, production-ready API from scratch using .NET Core.
This course does.
Why This Course?
This course focuses entirely on RESTful Web API development with ASP.NET Core & C# — using modern, industry-standard practices for .NET 9.
Whether you already know C#, .NET, and Entity Framework…
Or you're completely new to APIs…
This course takes you from zero to a fully deployed, secure, real-world API without skipping any steps.
What You Will Learn (By the End of This Course)
You will walk away fully confident in building any kind of Web API, including:
Entity Framework Core (Code-First) with advanced features
All HTTP Status Codes & Best Practices
EF Migrations inside Web APIs
Routing, Custom Endpoints & Controller Architecture
Authentication & Authorization with JWT Tokens
Building a Complete Real-World Watch Store E-Commerce API (Start → Finish)
Deploying APIs to Microsoft Azure (step-by-step)
This course teaches you exactly what real companies expect from a .NET API developer in 2025.
No More Wasting Time
Stop learning from:
Low quality outdated videos
Courses that only copy/paste code without actual understanding
Tutorials that skip important real-world features
Your time is valuable.
This course gives you:
Crystal-clear explanations
A perfectly structured outline
Real coding, real debugging, real problem-solving
A clean, practical, hands-on learning experience
I’ll explain every line of code, why it matters, and how it works.
Why Learn From Me?
I’ve been in your shoes — confused, overwhelmed, and stuck.
That’s exactly why this course is built with maximum clarity, error handling, and learn-by-doing techniques.
Everything is built live in front of you, so you understand how to fix problems and grow as a real developer.
And no — you don’t need any of my other courses before this one.
If you know C#, you’re ready.
Course Includes:
5+ hours of HD 1080p video content
Complete Real-World Watch Store Web API
REST architecture, Authentication, Access Tokens & more
Source code + downloadable materials
Lifetime access & updates
All the knowledge you need to build APIs on your own
So What Are You Waiting For?
Become a confident, professional API developer.
Start building real-world REST APIs the right way.
Enroll now and let’s start building together!