Webhooks with .NET 5

Leverage the power of webhooks to enhance your solutions.

In this hands-on, “no fluff / no filler” course we take a practical approach to building a working solution that uses Webhooks. We’ll cover some theory to start, but very quickly we jump into the practical step by step solution build which forms the vast majority of the course.

What you’ll learn

  • What Webhooks are and how to build them using C# and .NET 5.
  • How to build REST APIs using C# and .NET 5.
  • Use JavaScript (and “fetch”) to make API Calls.
  • How to create multiple HttpClients using HttpClient Factory in .NET.
  • What RabbitMQ is and how you can use it to enhance your solutions.
  • How to run SQL Server and RabbitMQ Servers with Docker Compose.
  • How to add Dependency Injection to a basic .NET Console app.
  • Automapper and Data Transfer Objects.

Course Content

  • Introduction –> 8 lectures • 26min.
  • Environment Set Up –> 6 lectures • 34min.
  • Webhook Registration API –> 8 lectures • 1hr 13min.
  • Flight Details (Airline) API –> 6 lectures • 38min.
  • Webhook Registration Page –> 2 lectures • 31min.
  • Travel Agent Webhook Endpoint –> 3 lectures • 26min.
  • Webhook Send Agent –> 13 lectures • 1hr 46min.

Webhooks with .NET 5

Requirements

  • Working understanding of C# & .NET.
  • Exposure to building REST APIs with C# & .NET (students can take my free course on YouTube).

In this hands-on, “no fluff / no filler” course we take a practical approach to building a working solution that uses Webhooks. We’ll cover some theory to start, but very quickly we jump into the practical step by step solution build which forms the vast majority of the course.

During the build, we will create 3 separate .NET Projects to simulate a fictional airline and its travel-agent customers. This approach will give students a real-world grounding in the use of webhooks and the value they bring to industry. The projects we build are:

  • Airline Web
    • Webhook Registration REST API
    • Flight Details REST API – used to trigger webhook by publishing to RabbitMQ message bus
    • Simple HTML / JavaScript / Bootstrap Web Client to make webhook registration API calls
  • Airline Send Agent
    • Stand alone “agent” used to send webhooks “en-mass”
    • Dependency Injection enabled
    • RabbitMQ Subscriber / Consumer with event based message delivery
    • Uses HttpClient and HttpClientFactory
  • Travel Agent Web
    • Simple Webhook POST Endpoint
    • Uses SQL Server backend to retrieve webhook “secret” to authenticate webhooks

We also use Docker Compose to set up and run following solution fabric:

  • RabbitMQ Server
  • Microsoft SQL Server

Students should be aware that we use VSCode as the development tool of choice, so students wanting to learn with Visual Studio should consider this carefully before purchasing.

Source Code is downloadable as a Lecture Resource.

Slideware is downloadable as a Lecture Resource

Get Tutorial