SnozeDevelopers
API referenceBilling

Open a checkout session for an AI top-up pack

Creates a Polar checkout session for a prepaid AI credit pack ($15 for 10,000 credits); the balance is credited later by the order webhook, not by this call. Requires a Clerk session with a synced profile and the `billing:manage` workspace permission. Refused as forbidden when top-ups are not available on the workspace's plan, when the pack is retired (`ai_topup_pack_retired`; retired packs only credit orders already paid), or when the purchase would pass the workspace's monthly top-up spend cap (`ai_topup_spend_cap`).

POST
/v1/workspaces/{workspaceId}/billing/ai-topups/checkout

Authorization

apiKey
headerAuthorizationBearer <snoze_sk_…>

Workspace API key created in Workspace settings → API keys. Scopes on the key bound what it can read and write.

Path Parameters

workspaceId*string

Request Body

application/json
  1. body
pack*string
Value in"credits_10k""small""large"
successUrl?string|null
embedOrigin?string|null

Response Body

Success

application/json
  1. response
data*
Example Request
curl -X POST 'https://api.snoze.dev/v1/workspaces/string/billing/ai-topups/checkout' \  -H 'Content-Type: application/json' \  -d '{  "pack": "credits_10k"}'
Example Response
{  "data": {    "id": "string",    "url": "string"  }}