businesses

Issue a credential for a customer

Mint an API key restricted to one existing business, for rotation, or a second narrower key.

{id} is the business id returned when you created the customer.

Use this to rotate a customer's credential after a leak: mint the replacement, deploy it, then revoke the old one. There is no window where that customer cannot send.

monthly_spend_cap_rands is the per-customer spend guardrail. All customers draw on your one workspace wallet, so a cap per key is what stops one customer's runaway loop from spending another's headroom.

Omit scopes to copy your own. Anything you do not hold is dropped rather than erroring, so issuing 500 keys from one template does not fail when your own scopes change.

key is returned ONCE. Only a hash is stored.

post/api/v1/businesses/{id}/keys

Request

  • Base URL: https://app.blueticked.com
  • URL: https://app.blueticked.com/api/v1/businesses/{id}/keys
  • Auth: HTTP bearer

Path parameters

idstring required

The resource's unique identifier.

Request body

namestring
scopesstring[]
expires_in_daysnumber
monthly_spend_cap_randsnumber

Example request

{
  "name": "Acme Dental (reporting)",
  "scopes": [
    "messages:read"
  ],
  "expires_in_days": 90,
  "monthly_spend_cap_rands": 2500
}

Response

Success

idstring uuid required
business_idstring uuid required
prefixstring required
scopesstring[] required
expires_atstring date-time nullable required
keystring required
request_idstring required

Example response

{
  "id": "44444444-4444-4444-9444-444444444444",
  "business_id": "22222222-2222-4222-9222-222222222222",
  "prefix": "blu_live_z9y",
  "scopes": [
    "contacts:read"
  ],
  "expires_at": "2026-11-07T10:00:00.000Z",
  "key": "blu_live_z9y8x7w6v5u4t3s2r1q0p",
  "request_id": "req_b2e3d610e10f1b07468721ee98f0e1d2"
}

Changes

No recorded changes to this operation across all 1 revision of this API.