Skip to content

API Reference

The platform exposes two API surfaces — an internal worker (staff, CF Access) and a platform worker (public, API key/OAuth). Both are documented as OpenAPI v3.1.0 specs organized by domain.

Open the interactive API viewer

DomainSpecTablesWorker
Commerceproduct10internal + platform
order12internal + platform
customer4internal + platform
payment7internal + platform
fulfillment10internal + platform
promotion6internal + platform
region7internal + platform
store3internal
inventory5internal + platform
pricing5internal + platform
return7internal + platform
Publisherpublisher5internal + platform
ad-server10internal + platform
membership6internal + platform
settlement7internal
invoice3internal
dispute5internal
Platformidentity5internal
governance2internal + platform
macrodata2internal
Operationalanalyticsinternal
creative-opsinternal
Webhooksinboundinternal

All specs follow these conventions:

  • snake_case for JSON properties, path parameters, and query parameters
  • Response envelope: { data: {...} } for single resources, { data: [...], pagination: {...} } for lists
  • Cursor-based pagination: ?limit=20&cursor={opaque} with { limit, next_cursor, prev_cursor, has_more }
  • Error responses: { error: { code, message, details } } with standard HTTP status codes
  • Soft deletes: DELETE returns 204; resources are archived (archive_ts set), not removed
  • Idempotency: POST endpoints accept Idempotency-Key header
WorkerBase URLAuthScope
internalhttps://internal.bluntcases.com/apiCF Access (Google SSO)Full CRUD, admin operations
platformhttps://platform.bluntcases.com/v1API key / OAuthPublic catalog, customer-facing

Specs annotate each operation with x-worker: [internal], x-worker: [platform], or both. See the path prefix conventions for how this maps to URL paths.

Common schemas, parameters, and responses are extracted to _shared/components.yaml and referenced across all 23 specs:

  • Parameters: Limit, Cursor, Order, Fields, Include, Search, IdempotencyKey
  • Schemas: Pagination, Error, StatusJsonb, Labels, Annotations
  • Responses: NotFound (404)