A modern, async-first .NET 10 client library for the Tiltify v5 API, featuring:
- Kiota-generated typed REST client from the official OpenAPI spec
- OAuth client credentials token management with automatic refresh
- Webhook signature verification (HMAC-SHA256 + Base64 using
Agash.Webhook.Abstractions) - Typed webhook event models for donations, facts/milestones, and more
- Dependency injection extensions for easy registration
- Native AOT compatible
| Package | Description |
|---|---|
Tiltify.Client | Core client, auth, webhook handler and models |
Tiltify.Client.Generated | Kiota-generated REST client |
Tiltify.Client.DependencyInjection | DI registration helpers |
Tiltify.Client.AspNetCore | ASP.NET Core middleware and endpoint helpers for webhook ingestion |
// Register servicesservices.AddTiltifyClient(options =>{options.ClientId="your-client-id";options.ClientSecret="your-client-secret";});// Inject and use the factoryvarfactory=serviceProvider.GetRequiredService<ITiltifyClientFactory>();usingvarclient=factory.CreateApiClient();varcampaigns=awaitclient.Api.Public.Campaigns.GetAsync();// Handle webhooksvarhandler=serviceProvider.GetRequiredService<ITiltifyWebhookHandler>();varresult=awaithandler.HandleAsync(webhookRequest,newTiltifyWebhookOptions{SigningSecret="your-webhook-signing-secret",});if(result.IsAuthenticated&&result.EventisTiltifyDonationWebhookEventdonation){Console.WriteLine($"Donation: {donation.Data.DonorName} — {donation.Data.Amount.Value}{donation.Data.Amount.Currency}");}Tiltify signs webhook deliveries using HMAC-SHA256. The signed string is {X-Tiltify-Timestamp}.{rawBody}, and the signature is Base64-encoded. This library verifies that automatically using the configured signing secret.
MIT