NEW Teams, roles & audit log

Licensing your customers can't spoof.

Sentry handles licensing, authentication, software delivery, and user management for desktop applications. Authentication responses are signed with your application's Ed25519 key, so your client can verify every login before trusting it.

Free to startNo credit cardSDKs for C/C++ and C#
Signed responses Seat licensing Device binding Webhooks + REST API Analytics + audit log C / C++ / C# SDKs
Platform

One service for the whole lifecycle.

Manage licenses, users, devices, builds, webhooks, analytics, and teams from a single service.

Signed authentication

Each application gets its own Ed25519 key pair. Responses are signed with the private key, which is encrypted at rest; your client verifies them with the embedded public key. A cloned or proxied server can't forge a login.

Seat-based licensing

Limit each key to a fixed number of devices. Devices are bound by HWID at authentication and can be revoked individually.

Live control

Push revoke, kill, and update signals to running clients over a long-poll channel.

Analytics

Authentication volume, version adoption, operating systems, and regional usage.

Teams and audit

Invite teammates as admin, support, or read-only. Every change is recorded in an audit log.

Software delivery

Upload releases through the dashboard. The SDK verifies the download hash and signature before launch.

SDKs and management API

C/C++ and C#/.NET SDKs handle verification, sessions, and the update signals. For server-to-server work, scoped tokens let you issue keys or ban a user from your own backend.

How it works

Three steps to integrate.

1

Create an app

Create an app in the dashboard. It gets a signing key pair; copy the public key into your client.

2

Issue license keys

Issue keys with seats, an expiry, and tags, one at a time or from a template.

3

Verify in your client

Call auth from the SDK. It verifies the response before your app reads any field.

SDKs

Integration looks like this.

Call auth and check the result. The SDK verifies the response and manages the session for you.

Program.cs
using Sentry;

var client = new SentryClient(
    baseUrl, appKey, publicKeyHex,
    useProtocolV2: true);

var r = await client.AuthAsync("KEY-XXXX-YYYY");

if (r.Ok) {
  // verified fields, safe to read
  Console.WriteLine(r.Name);      // license label
  Console.WriteLine(r.Expires);   // or null = lifetime
}
Security

Reviewed and tested.

The platform has had an external security review. Core security properties are covered by automated tests.

No field injectionValues reflected into the signed string are allowlisted at input and stripped of delimiters.
One key, one accountRedemption is an atomic conditional update backed by a database uniqueness constraint.
SSRF-guarded webhooksPrivate, loopback, link-local and metadata targets are blocked at creation and at delivery.
Encrypted key vaultEach app's private seed is AES-256-GCM encrypted under a master key; only public keys are ever exposed.
CSRF + secure defaultsOrigin-checked mutations, SameSite cookies, secure-cookie and closed-signup defaults out of the box.
Abuse limits everywherePer-customer and per-app rate limits, storage quotas, and a hard LIMIT on every list endpoint.
Pricing

Plans and limits.

All plans include the dashboard, APIs, SDKs, and signed authentication. Upgrade only when you need higher limits or Enterprise features.

Tester

$0/mo

For evaluating the API.

  • 1 app, 2 license keys
  • Signed auth, seats & devices
  • Community support
Get started
Most popular

Pro

$35/mo

For products in production.

  • Unlimited apps, 10,000 keys
  • Webhooks, analytics & live sessions
  • Team roles & audit log
  • Email support
Get Pro

Enterprise

Custom

For scale, compliance & on-prem.

  • SSO, SLA & audit exports
  • Dedicated or self-managed / on-prem
  • Priority support & onboarding
Contact sales

Ready to integrate?

Create an application, issue a license, and authenticate your first client in a few minutes.