ДокументацияОткрыть Kanyman
Разделы документации

Разработчикам

Действия с подтверждением

Fail-closed контракт для изменения данных внешнего продукта без прямого write-доступа модели.

Обновлено: 10 августа 2026

Draft capability

jsonKanyman docs
{
  "name": "prepare_delivery_retry",
  "capability_version": "1.0.0",
  "side_effect": "draft",
  "confirmation_policy": "required",
  "idempotency_policy": "required",
  "method": "POST",
  "url": "https://api.example.com/kenyman/actions/delivery-retry"
}

Жизненный цикл

textKanyman docs
awaiting_confirmation
  → confirmed
  → executing
  → succeeded | failed | unknown_result

awaiting_confirmation | confirmed
  → cancelled

awaiting_confirmation
  → expired

Endpoint продукта не вызывается до server-side confirmation. Действие может подтвердить owner/admin проекта в ЛК или конечный пользователь в своей авторизованной Web Chat-сессии. После подтверждения действие попадает в durable-очередь и выполняется отдельным worker.

Запрос к вашему endpoint

httpKanyman docs
POST /kanyman/actions/delivery-retry
Idempotency-Key: action_...
Authorization: Bearer ...
X-Kanyman-Key-Id: connector-current
X-Kanyman-Timestamp: ...
X-Kanyman-Nonce: ...
X-Kanyman-Body-SHA256: ...
X-Kanyman-Signature: ...

{
  "request_id": "ktc_action_...",
  "integration_id": "ext_...",
  "action_id": "action_...",
  "capability_version": "1.0.0",
  "subject": "opaque-user-reference",
  "entities": [{ "type": "project", "ref": "prj_..." }],
  "input": { "request_id": "req_..." }
}
  • Обрабатывайте Idempotency-Key как уникальный ключ операции и возвращайте тот же результат при повторе.
  • Не доверяйте браузеру значения subject, integration_id, action_id и capability_version.
  • Сохраняйте связь action_id с внутренней операцией для ручной reconciliation-проверки.

Неизвестный результат

Продолжить

Действия с подтверждением — Kanyman Docs