Everything you need to issue, validate, and manage license keys from your own product.
Create a free account, add a product from the dashboard, and generate an API key scoped to it. Every request to the validation or management API is authenticated with that key.
Pass your API key as a bearer token. Keys are scoped to a single tenant, and we only ever store a cryptographic hash of it — the full value is shown once, at creation.
Authorization: Bearer bk_live_xxxxxxxxxxxxxxxxCall this from your app at runtime to check whether a license key is valid. This endpoint runs on isolated infrastructure so billing or admin issues never affect it.
POST/v1/validate // request { "key": "BK-XXXX-XXXX-XXXX", "device_id": "device-42" } // response { "valid": true, "status": "active", "seats_used": 1, "seats_limit": 3 }
Configure fail-open or fail-closed behavior per product for how this endpoint responds during a database outage.
Create new license keys from your own backend using the management API.
POST/v1/licenses { "product_id": "prod_9f2c", "seats": 3, "customer_email": "customer@example.com" }
Set an email on the request and we can send the key to your Licensee for you.
Subscribe to license.issued, license.activated, and license.revoked events from the dashboard. Each delivery is signed with your webhook secret so you can verify it came from us.
The API returns standard HTTP status codes. 401 means a missing or invalid API key, 404 means the key or product doesn't exist for your tenant, and 429 means you've hit a rate limit.