Commit Workflow Run Turn (M2M)
Atomically stores one turn's messages and the run's new checkpoint. A repeated turn_id answers with the earlier reply (outcome duplicate); a stale expected_version or expected_next_sequence is a 409 version_conflict, and a run that already ended is a 409 conversation_ended; a client_action while another is live is a 409 action_pending, and one whose call_id already belongs to another run's or a closed action is a 409 call_id_reused. An inbox turn whose respond lease no longer covers its input is a 409 lease_lost. Authenticated with a run or deployment token whose scope covers the run's Conversation.
Authorization
BundleAccessToken In: header
Path Parameters
uuidRequest Body
application/json
TypeScript Definitions
Use the request body type in TypeScript.
Response Body
application/json
curl -X POST "https://example.com/v1/bundler/workflow-runs/497f6eca-6276-4993-bfeb-53cbbbba6f08/turns" \ -H "Content-Type: application/json" \ -d '{ "expected_version": 0, "messages": [ { "role": "user", "content": "string" } ], "checkpoint": {} }'{ "outcome": "applied", "version": 0, "replay": [ { "role": "string", "tool_name": "string", "content": "string", "tool_call_id": "string", "attachments": [ { "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08", "kind": "image", "media_type": "string", "name": "string", "width": 0, "height": 0, "page_count": 0, "byte_size": 0, "status": "uploading", "reject_reason": "string", "retention": "conversation", "source": "upload", "analysis_status": "not_required", "analysis": { "description": "string", "ocr_text": "string" }, "analysis_model": "string", "analysis_tokens": 0, "delivered_as": "native" } ] } ]}