API essentials

Idempotency

runs.start accepts an optional client-chosen runId. Retry the same start with the same id and conversation to receive the same run id without duplicate work. Use a new id for a new instruction. A retry does not amend the already admitted input or profile.

automations.invoke and automations.signal accept an idempotencyKey. Follow their endpoint contracts, including the required current automation revision. There is no general Idempotency-Key header in v1.

Approval decisions are single-shot: a repeated decision can return 409 approval_not_pending. Read recorded state after an ambiguous response instead of assuming the action failed or creating a replacement action.

Fin documentation Built from the API contract · v1

Search all documentation