callbotagent.aiDokumentacja
v1 · Contract draft
ENPL
Otwórz panel
Zapowiedź

Capabilities

Dokumentacja poglądowa / kontrakt symulowany (draft). Schematy i przykłady odzwierciedlają zaplanowane Commerce API v1 — wartości finalne potwierdzimy przy zamrożeniu kontraktu produkcyjnego.

GET /capabilities

Opis

Wersja kontraktu, limity, obsługiwane order kinds, eventy i feature flags. Base URL: https://api.callbotagent.ai/api/v1/commerce.

Wymagany scope

commerce:read

Nagłówki

Nagłówek Wartość Wymagany
Content-Type application/json (gdy body) przy body
X-CBA-Key-Id identyfikator klucza (w przykładach: cba_test_••••••••) tak
X-CBA-Timestamp RFC 3339 UTC tak
X-CBA-Nonce unikalny nonce w oknie 300 s tak
X-CBA-Content-SHA256 SHA-256 hex surowego body (e3b0c44… dla pustego) tak
X-CBA-Signature hmac-sha256=<hex> tak
Idempotency-Key klucz idempotencji mutacje: tak

Przykład żądania

curl -X GET https://api.callbotagent.ai/api/v1/commerce/capabilities \
  -H "X-CBA-Key-Id: cba_test_••••••••" \
  -H "X-CBA-Timestamp: 2026-07-11T10:00:00Z" \
  -H "X-CBA-Nonce: n_8f3a2c1b" \
  -H "X-CBA-Content-SHA256: <sha256-body>" \
  -H "X-CBA-Signature: hmac-sha256=<hex>"

Przykładowa odpowiedź

{
  "contract_version": "2026.07.11-draft.1",
  "base_path": "/api/v1/commerce",
  "order_kinds": [
    "standard",
    "repurchase_intent"
  ],
  "events": [
    "commerce.order.status_changed.v1",
    "commerce.call.attempt_completed.v1",
    "commerce.order.result_ready.v1",
    "commerce.writeback.failed.v1"
  ],
  "limits": {
    "products_batch_max": 500,
    "variants_per_product_max": 100,
    "page_limit_default": 50,
    "page_limit_max": 200
  },
  "features": {
    "webhooks": true,
    "repurchase_intents": true,
    "writeback": "partner_dependent"
  }
}

Możliwe błędy

Status code Znaczenie
401 invalid_signature / expired_timestamp / replay_nonce HMAC / okno replay
403 insufficient_scope brak wymaganego scope
404 resource_not_found zasób niedostępny dla principal
409 idempotency_key_reused / stale_source_version konflikt idempotencji / wersji
422 validation_failed body nie spełnia schematu / invariants
429 rate_limited limity — patrz Retry-After

Powiązane