POST/v1/browser/activate

Activate browser key

Use this from browser integrations before creating jobs. Send the publishable key in the JSON body; the API validates the Origin header against the key's allowed-origins list.

Auth: No Authorization header; publishable key in JSON body with allowed Origin

Request parameters

NameTypeRequiredDescription
publishable_keystringYesPublishable key shown once in the dashboard.
Origin headerstringYesBrowser origin that must match an allowed origin for the publishable key.

Response fields

NameTypeRequiredDescription
okbooleanYesTrue when activation succeeds.
activation_tokenstringYesShort-lived token bound to the project and origin.
expires_at_msintegerYesUnix epoch milliseconds for token expiry.
key_idstringYesActivated publishable key identifier.
wrapper_tenant_idstringYesWrapper tenant bound to the token.
project_idstringYesProject bound to the token.

Examples

activate.sh
curl -X POST https://api.wavebird.ai/v1/browser/activate \
  -H "Origin: https://publisher.example" \
  -H "Content-Type: application/json" \
  -d '{
    "publishable_key": "pk_test_wavebird_demo_publishable"
  }'

Response example

{
  "ok": true,
  "activation_token": "wbat_demo_eyJhbGciOi...",
  "expires_at_ms": 1777032600000,
  "key_id": "key_demo_123",
  "wrapper_tenant_id": "wbt_demo_123",
  "project_id": "wbproj_demo_8jK42"
}

Errors

unauthorized401

Missing or unknown publishable key.

forbidden403

Origin is not allowed for this key.

validation_error400

publishable_key is missing or malformed, or the Origin header is absent.

Need rollout review?

Contact the team

Start in the dashboard, choose Script Tag or Server API, and use contact only when you need rollout review, enterprise coordination, or non-standard integration help. Billing beacon rules live in the API concepts guide.