POST /api/v1/projects/:projectId/client-keys.
Public client key (browser-safe)
- Prefix:
bq_pk_… - Safe to ship in browsers and mobile apps; scoped to one project.
- Optional origin allowlist — requests are only accepted from listed origins; wildcards like
https://*.example.comare supported. - Optional reCAPTCHA v3 enforcement (
require_captcha) for abuse protection.
Client ID + secret (server-side)
- Prefixes:
bq_ci_…(ID) andbq_cs_…(secret). - For backend integrations only — never expose in client-side code.
- The secret is hashed at rest and shown exactly once on creation.
Header summary
CAPTCHA
If the public key hasrequire_captcha enabled, send a reCAPTCHA v3 token:
- HTTP:
X-Captcha-Token: <token>header - WebSocket:
captcha_tokenfield on the chat frame
captcha_required / captcha_failed errors.
Group permissions
Client keys can carryallowed_groups: [uuid] restricting retrieval to specific source groups. Any request group_ids are intersected with this set — a request referencing a group outside the key’s allowed set or outside the project is rejected with 403.