Skip to content

Repository files navigation

Tiltify.Client

NuGet CI License: MIT

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

Packages

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

Quick Start

// Register services
services.AddTiltifyClient(options =>
{
    options.ClientId = "your-client-id";
    options.ClientSecret = "your-client-secret";
});

// Inject and use the factory
var factory = serviceProvider.GetRequiredService<ITiltifyClientFactory>();
using var client = factory.CreateApiClient();
var campaigns = await client.Api.Public.Campaigns.GetAsync();

// Handle webhooks
var handler = serviceProvider.GetRequiredService<ITiltifyWebhookHandler>();
var result = await handler.HandleAsync(webhookRequest, new TiltifyWebhookOptions
{
    SigningSecret = "your-webhook-signing-secret",
});

if (result.IsAuthenticated && result.Event is TiltifyDonationWebhookEvent donation)
{
    Console.WriteLine($"Donation: {donation.Data.DonorName}{donation.Data.Amount.Value} {donation.Data.Amount.Currency}");
}

Webhook Signature Verification

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.

License

MIT

About

Typed .NET client library for the Tiltify v5 API and webhooks.

Topics

Resources

Code of conduct

Contributing

Security policy

Stars

1 star

Watchers

0 watching

Forks

Releases

Used by

Contributors

Languages