Agash.Webhook.Abstractions
1.0.1
dotnet add package Agash.Webhook.Abstractions --version 1.0.1
NuGet\Install-Package Agash.Webhook.Abstractions -Version 1.0.1
<PackageReference Include="Agash.Webhook.Abstractions" Version="1.0.1" />
<PackageVersion Include="Agash.Webhook.Abstractions" Version="1.0.1" />
<PackageReference Include="Agash.Webhook.Abstractions" />
paket add Agash.Webhook.Abstractions --version 1.0.1
#r "nuget: Agash.Webhook.Abstractions, 1.0.1"
#:package Agash.Webhook.Abstractions@1.0.1
#addin nuget:?package=Agash.Webhook.Abstractions&version=1.0.1
#tool nuget:?package=Agash.Webhook.Abstractions&version=1.0.1
Agash.Webhook.Abstractions
Transport-neutral webhook contracts for modern .NET applications and libraries.
This package keeps the core webhook handling surface intentionally small:
- request and response value types
- a normalized handler contract
- a result model for accepted, rejected, and ignored webhook processing
It is meant to be reused by platform-specific webhook libraries without forcing an ASP.NET Core dependency or a product-specific architecture.
Package
dotnet add package Agash.Webhook.Abstractions
What it provides
WebhookRequestfor normalized inbound webhook payloadsWebhookResponsefor transport-neutral HTTP-style responsesWebhookHandleResultfor explicit handler outcomesIWebhookHandlerfor library or host integrations
Minimal example
using Agash.Webhook.Abstractions;
public sealed class SampleWebhookHandler : IWebhookHandler
{
public ValueTask<WebhookHandleResult> HandleAsync(WebhookRequest request, CancellationToken cancellationToken = default)
{
if (request.Body.Length == 0)
{
return ValueTask.FromResult(
WebhookHandleResult.Rejected(
WebhookResponse.BadRequest("Request body is required.")));
}
return ValueTask.FromResult(WebhookHandleResult.Accepted());
}
}
Design goals
- no web framework dependency
- explicit request and response modeling
- easy to compose into ASP.NET Core, worker services, desktop apps, or test hosts
- suitable as a base abstraction for higher-level webhook client libraries
Development
dotnet test Agash.Webhook.Abstractions.slnx
| Product | Versions Compatible and additional computed target framework versions. |
|---|---|
| .NET | net9.0 is compatible. net9.0-android was computed. net9.0-browser was computed. net9.0-ios was computed. net9.0-maccatalyst was computed. net9.0-macos was computed. net9.0-tvos was computed. net9.0-windows was computed. net10.0 is compatible. net10.0-android was computed. net10.0-browser was computed. net10.0-ios was computed. net10.0-maccatalyst was computed. net10.0-macos was computed. net10.0-tvos was computed. net10.0-windows was computed. |
-
net10.0
- No dependencies.
-
net9.0
- No dependencies.
NuGet packages (9)
Showing the top 5 NuGet packages that depend on Agash.Webhook.Abstractions:
| Package | Downloads |
|---|---|
|
KoFi.Client
Typed, transport-neutral .NET client library for Ko-fi webhook processing. |
|
|
Fourthwall.Client
Typed .NET client library for the Fourthwall Platform API and webhooks. |
|
|
Tiltify.Client
Typed .NET client library for the Tiltify v5 API and webhooks. |
|
|
Patreon.Client
Modern .NET 10 Patreon API v2 client library with full webhook support, JSON:API relationship resolution, and automatic webhook management. |
|
|
Kick.Client
Typed .NET client library for the Kick Platform API, OAuth 2.1 PKCE flow, and RSA-verified webhooks. |
GitHub repositories
This package is not used by any popular GitHub repositories.