Modern .NET packages for the Kick platform API, OAuth 2.1 PKCE flows, and RSA-verified webhooks.
Kick.ClientKick.Client.AspNetCoreKick.Client.DependencyInjectionKick.Client.Generated
- a typed Kiota-based API client for the Kick platform API
- OAuth 2.1 PKCE helpers for desktop and local-app flows
- webhook signature verification and normalized event models
- ASP.NET Core route mapping helpers
- an interactive Spectre.Console sample that walks through tunnel setup, auth, and event subscriptions
dotnet add package Kick.Client
dotnet add package Kick.Client.AspNetCoreAdd the DI package when you want service registration helpers:
dotnet add package Kick.Client.DependencyInjectionusingKick.Client.Authentication;KickOAuthOptionsoptions=new(){ClientId="your-client-id",RedirectUri="http://127.0.0.1:5200/oauth/callback",Scopes="user:read channel:read events:subscribe"};stringcodeVerifier=KickPkceFlowHelper.GenerateCodeVerifier();stringcodeChallenge=KickPkceFlowHelper.DeriveCodeChallenge(codeVerifier);stringstate=Guid.NewGuid().ToString("N");stringauthorizationUrl=KickPkceFlowHelper.BuildAuthorizationUrl("https://id.kick.com",options,codeChallenge,state);usingKick.Client.AspNetCore;usingKick.Client.Webhooks;varbuilder=WebApplication.CreateBuilder(args);builder.Services.AddKickClient();varapp=builder.Build();app.MapKickWebhook("/webhooks/kick",static(_,_)=>Task.FromResult(newKickWebhookOptions()),static(evt,_,_)=>{Console.WriteLine(evt.EventType);returnTask.CompletedTask;});awaitapp.RunAsync();Run the interactive sample to host a webhook endpoint, expose it through Azure Dev Tunnels, complete PKCE auth, and subscribe to Kick webhook events:
dotnet run --project samples/Kick.Client.Sampledotnet test Kick.Client.slnx