Documentation API & Integrations API reference (index) Preview
API reference (index)
Preview documentation / simulated contract (draft). Schemas and examples reflect the planned Commerce API v1 — final values will be confirmed when the production contract is frozen.
Complete list of public Commerce API v1 operations. Base URL:
https://api.callbotagent.ai/api/v1/commerce. Method pages are synchronized with
the OpenAPI file (version 2026.07.11-draft.1).
Conceptual resources
Discovery
Method and path
Description
Scope
Page
GET /capabilities
Contract version, limits, supported order kinds, events, and feature flags.
commerce:read
Capabilities
GET /configuration/effective
Sanitized effective config, readiness, and blockers (no owner secrets).
configuration:read
Effective configuration
Catalog
Method and path
Description
Scope
Page
POST /products/batch
Idempotent upsert of up to 500 products with variants/categories.
catalog:write
Catalog upsert (batch)
GET /products
Cursor list / search / filter.
catalog:read
List products
GET /products/{externalProductId}
Product detail with variants.
catalog:read
Product details
DELETE /products/{externalProductId}
Tombstone/archive — never hard delete. May trigger requalification of active orders.
catalog:write
Archive product
Customers
Method and path
Description
Scope
Page
PUT /customers/{externalCustomerId}
Profile, BCP 47 locale, and consent proof.
customers:write
Upsert customer
GET /customers/{externalCustomerId}
Sanitized detail (no unnecessary PII).
customers:read
Customer details
POST /customers/{externalCustomerId}/anonymize
Idempotent erasure / anonymization workflow (GDPR).
customers:erase
Anonymize customer
Orders
Method and path
Description
Scope
Page
POST /orders
Create/upsert order (standard) or repurchase intent — full order, not a lead.
orders:write
Create order / repurchase intent
GET /orders/{externalOrderId}
Canonical order + processing_state.
orders:read
Order details
PATCH /orders/{externalOrderId}
Versioned update; after qualification may trigger requalification (CAS).
orders:write
Update order
POST /orders/{externalOrderId}/cancel
CAS-safe cancellation.
orders:write
Cancel order
Results
Method and path
Description
Scope
Page
GET /orders/{externalOrderId}/result
Final result projection: processing_state, disposition, business_outcome, snapshot.
results:read
Order result
GET /orders/{externalOrderId}/calls
Cursor list of attempts + reports/transcript policy.
results:read
Call attempt history
Rules
Method and path
Description
Scope
Page
PUT /sales-rules/{externalRuleId}
replacement/upsell/cross-sell/quantity/price constraint.
rules:write
Upsert sales rule
GET /sales-rules
Cursor list of sales rules.
rules:read
List sales rules
GET /sales-rules/{externalRuleId}
Rule detail.
rules:read
Sales rule details
DELETE /sales-rules/{externalRuleId}
Archive rule (not hard delete).
rules:write
Archive sales rule
Webhooks
Method and path
Description
Scope
Page
GET /webhook-subscription
URL masked, events, health — no secret.
webhooks:read
Read webhook subscription
PUT /webhook-subscription
HTTPS URL, event allowlist, active flag.
webhooks:write
Upsert webhook subscription
POST /webhook-subscription/secret/rotate
Reveal-once secret + overlap rotation window.
webhooks:write
Rotate webhook secret
POST /webhook-subscription/test
Same outbox/delivery path, test=true flag.
webhooks:write
Test webhook delivery
GET /webhook-deliveries
Cursor log with masked/sanitized request/response.
webhooks:read
Webhook delivery log
POST /webhook-deliveries/{deliveryId}/replay
New attempt for the same immutable event.
webhooks:write
Replay webhook delivery
Conventions
JSON snake_case; money = decimal string + ISO 4217; phone E.164; locale BCP 47.
Lists: opaque cursor, limit default 50 / max 200.
Mutations: Idempotency-Key + optional source_version (409 on stale).
Errors: application/problem+json — Errors .
Auth: HMAC .