Skip to main content
CF

Web API From Start to Finish

17h 59m 54s
English
Paid

Application Programming Interfaces (APIs) are essential components in modern software development, enabling seamless communication between programs and users. They play a crucial role in the functionality and efficiency of various applications.

Why APIs are Essential

APIs are the backbone of the internet, facilitating interactions between different software components. They are indispensable in the development of microservices, mobile applications, and client-side web frameworks like Angular, React, and Vue. Understanding how to build robust APIs is essential for enhancing scalability and code reuse in both desktop and web applications.

Course Overview

This comprehensive course is designed to empower developers with the skills needed to create powerful and resilient APIs. You will gain in-depth knowledge on the following key areas:

API Authentication

Learn how to implement and manage authentication to ensure secure access to your APIs.

API Protection

Discover techniques to safeguard your API from unauthorized access and potential threats.

API Versioning

Understand how to version your APIs effectively to maintain compatibility across different platforms and versions.

API Documentation

Master the art of documenting your APIs to make them user-friendly and easily understandable for developers.

API Monitoring

Explore strategies for monitoring your APIs to ensure optimal performance and reliability.

Join this course to transform your ability to build state-of-the-art APIs and elevate your development skills.

About the Author: Tim Corey

Tim Corey thumbnail

Tim Corey is the US developer behind iamtimcorey.com and the IAmTimCorey YouTube channel — one of the most prolific independent .NET / C# educators online. He has been publishing weekly .NET content since 2017 and has anchored a generation of working .NET developers' learning path through the platform's evolution from .NET Framework to .NET Core to modern .NET.

The course catalog covers the full .NET stack: C# language fundamentals, ASP.NET Core for web development, Blazor for full-stack C# web applications, Entity Framework Core for data access, MAUI for cross-platform mobile, design patterns and SOLID principles, the testing tracks, Azure deployment, and the broader software-engineering craft topics (debugging, code review, project structure) that most pure-tutorial sources skip.

The CourseFlix listing under this source carries over 14 Tim Corey courses spanning that range. Material is paid and aimed primarily at .NET developers building real production proficiency rather than picking up syntax.

Watch Online 88 lessons

This is a demo lesson (10:00 remaining)

You can watch up to 10 minutes for free. Subscribe to unlock all 88 lessons in this course and access 10,000+ hours of premium content across all courses.

View Pricing
0:00
/
#1: Introduction
All Course Lessons (88)
#Lesson TitleDurationAccess
1
Introduction Demo
01:21
2
Who This Course Is For
06:08
3
What This Course Covers
11:42
4
What This Course Does Not Cover
07:02
5
What Outcomes Should You Expect
04:01
6
Introduction
02:11
7
What is an API
03:13
8
When would we use an API
12:05
9
What is REST
07:17
10
Where does ASP.NET Core Fit
01:55
11
Introduction
00:59
12
Creating a New Project
05:43
13
Basic Setup
28:06
14
Project Cleanup
02:19
15
Adding A Controller
12:00
16
HTTP Verbs
22:54
17
OpenAPI / Swagger
18:51
18
Adding API to an Existing Project
11:39
19
Introduction
01:10
20
Using a Browser
03:22
21
Using OpenAPI
04:40
22
Using Postman
12:48
23
Introduction
02:16
24
Storing Secrets
17:39
25
Creating Tokens
58:37
26
Basic Authentication and Authorization
14:15
27
Creating Claims
06:10
28
Advanced Authorization
37:34
29
Introduction
02:30
30
Creating a Sample API
02:06
31
Configuring Versioning Library
03:39
32
Implementing API Versioning
22:42
33
Configure Swagger
14:27
34
Deprecating a Version
13:46
35
Version Neutral Endpoints
06:54
36
Introduction
00:40
37
Creating Our Sample API
01:41
38
Logging
33:39
39
Health Checks
33:11
40
Real-Time Monitoring
19:09
41
Introduction
01:37
42
Creating a Sample API
01:32
43
Data Validation
24:40
44
Caching
22:47
45
Rate-limiting
43:25
46
Introduction
02:09
47
Designing the API
42:03
48
Creating a Class Library
08:44
49
Creating the API Project
07:15
50
Adding Basic Security
28:32
51
Adding Health Checks
10:52
52
Create the Controllers
19:32
53
Building the Database
47:34
54
Recreating the Database
11:20
55
Add Data Access
58:24
56
Wire Up the API
37:26
57
Adding Logging
16:58
58
Testing the API
11:15
59
Introduction
03:30
60
Creating a Blazor Client
03:26
61
Wiring Up the HttpClient
07:28
62
Creating the Login Page
27:16
63
Creating the Display Page
16:51
64
Completing Todos
08:11
65
Alternative: Using OpenAPI Generated Client
18:15
66
Introduction
00:48
67
Build the Test API
03:01
68
Serve Swagger on the Root
03:59
69
Support OpenAPI 2
01:30
70
Customize Swagger
05:19
71
Enable XML Comments
10:05
72
Enable Authentication In Swagger
10:35
73
Customizing the CSS Theme
06:38
74
Introduction
01:17
75
Create a Minimal API
03:45
76
Add Sample Endpoints
04:43
77
Add Real Endpoints
26:14
78
Secure the API
18:34
79
Introduction
00:29
80
Consistency
03:59
81
Good Naming
04:41
82
Secure By Default
02:21
83
Use Standard HTTP Status Codes
01:57
84
Version Your API
03:09
85
Include a Health Check Endpoint
01:49
86
Use Pagination
04:30
87
Document Endpoints
04:02
88
Conclusion
03:06
Unlock unlimited learning

Get instant access to all 87 lessons in this course, plus thousands of other premium courses. One subscription, unlimited knowledge.

Learn more about subscription

Related courses

  • Object-Oriented Programming thumbnailUpdated 2y ago

    Object-Oriented Programming

    By: ProgrammingExpert.io
    Programming languages are often classified based on their syntax, features, and execution models. This course introduces you to the idea of programming paradigm
    4h 36m5/5
  • The Software Designer Mindset (COMPLETE) thumbnailUpdated 2y ago

    The Software Designer Mindset (COMPLETE)

    By: ArjanCodes (Arjan Egges)
    "The Software Designer Mindset" is a course that teaches all aspects of software architecture and offers practical advice on creating scalable software.
    14h 32m
  • Clean Code Zero to One thumbnailUpdated 1y ago

    Clean Code Zero to One

    By: Shahan Chowdhury
    "Clean Code Zero to One" is a guide on writing clean and maintainable code, based on the modern practices of Robert C. Martin (Uncle Bob).

Frequently asked questions

What are the prerequisites for this course?
Before enrolling in this course, students should have a foundational understanding of programming and familiarity with web development concepts. Experience with C# and ASP.NET Core will be beneficial, as the course includes lessons such as 'Where does ASP.NET Core Fit' and 'Creating a New Project'. While not mandatory, prior knowledge of client-side web frameworks like Angular, React, or Vue can help contextualize API integration.
What projects will I build during the course?
The course involves creating several sample APIs, which will give you practical experience in applying the concepts covered. For instance, you will work on a 'Creating a Sample API' project to understand data validation, caching, and rate-limiting. Additionally, there is a project focused on 'Building the Database' and 'Recreating the Database', providing hands-on experience in backend development alongside API integration.
Who is the target audience for this course?
This course is designed for developers looking to enhance their skills in building robust and scalable APIs. It is suitable for those interested in backend development, particularly in creating and managing web APIs using modern tools and practices. Developers aiming to implement APIs in microservices, mobile applications, or integrate them with client-side frameworks like Angular, React, and Vue will find this course particularly useful.
How does this course compare in scope to other API courses?
This course offers a comprehensive exploration of API development, including advanced topics like API authentication, protection, versioning, and monitoring. Unlike some introductory courses, it covers a wide range of practical skills, from 'Storing Secrets' and 'Creating Tokens' to 'Implementing API Versioning' and 'Real-Time Monitoring'. The inclusion of lessons on 'Logging', 'Health Checks', and 'Rate-limiting' ensures a thorough understanding of maintaining and scaling APIs.
What specific tools and platforms are covered in the course?
The course covers several essential tools and platforms for API development. Notably, it includes lessons on using ASP.NET Core, as seen in 'Where does ASP.NET Core Fit', and tools like OpenAPI/Swagger for API documentation. Additionally, it features practical exercises with Postman for testing APIs, and lessons on integrating with client-side frameworks through a project in 'Creating a Blazor Client'.
What topics are not included in this course?
While the course covers a wide range of API-related topics, it does not delve into frontend development in detail, aside from a brief section on 'Creating a Blazor Client'. It also does not cover database management in depth, although basic database interactions are demonstrated in 'Building the Database'. Topics like machine learning and data science are outside the scope of this course.
How much time should I expect to commit to this course?
The course comprises 88 lessons, each varying in duration and complexity. As there is no total runtime specified, students should plan their schedule to accommodate both the instructional content and time for practical exercises. Given the in-depth nature of the topics, a commitment of several weeks, with regular study and practice sessions, is recommended to fully absorb the material and apply the skills learned.