callbotagent.aiDocs
v1 · Contract draft
ENPL
Open dashboard
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.