Accepts or rejects an offered Handoff; accept atomically transfers ownership and fences the old lease.
POST
/v1/m/sessions/handoffs/{id}/responses
const url = 'https://example.com/v1/m/sessions/handoffs/example/responses';const options = { method: 'POST', headers: { 'If-Match': 'example', 'Idempotency-Key': '2489E9AD-2EE2-8E00-8EC9-32D5F69181C0', Authorization: 'Bearer <token>', 'Content-Type': 'application/json' }, body: '{"reason":{"code":"example","references":[{"hash":"example","kind":"example","ref":"example"}],"text":"example"},"transition":"accept"}'};
try { const response = await fetch(url, options); const data = await response.json(); console.log(data);} catch (error) { console.error(error);}curl --request POST \ --url https://example.com/v1/m/sessions/handoffs/example/responses \ --header 'Authorization: Bearer <token>' \ --header 'Content-Type: application/json' \ --header 'Idempotency-Key: 2489E9AD-2EE2-8E00-8EC9-32D5F69181C0' \ --header 'If-Match: example' \ --data '{ "reason": { "code": "example", "references": [ { "hash": "example", "kind": "example", "ref": "example" } ], "text": "example" }, "transition": "accept" }'Accepts or rejects an offered Handoff; accept atomically transfers ownership and fences the old lease.
Authorizations
Section titled “ Authorizations ”Parameters
Section titled “ Parameters ”Path Parameters
Section titled “ Path Parameters ” id
required
string
Path parameter id.
Header Parameters
Section titled “ Header Parameters ” X-Olivares-Tenant
string format: uuid
Target tenant id; required when the principal can act in more than one tenant.
If-Match
required
string
Current strong Handoff ETag.
Idempotency-Key
required
string format: uuid
Canonical UUID binding the atomic response and ownership transition.
Request Body required
Section titled “ Request Body required ”Responses
Section titled “ Responses ”Handoff response committed or replayed
Media type application/json
object
ack_id
string format: uuid
audit_seq
required
integer format: int64
command_id
required
string format: uuid
delivery_id
required
string format: uuid
etag
required
string
event_id
required
string format: uuid
handoff_id
required
string format: uuid
message_id
required
string format: uuid
owner_epoch
required
integer format: int64
replayed
required
boolean
resulting_lease_fence
integer format: int64
state
required
string
version
required
integer format: int64
work_item_id
required
string format: uuid
Example generated
{ "ack_id": "2489E9AD-2EE2-8E00-8EC9-32D5F69181C0", "audit_seq": 1, "command_id": "2489E9AD-2EE2-8E00-8EC9-32D5F69181C0", "delivery_id": "2489E9AD-2EE2-8E00-8EC9-32D5F69181C0", "etag": "example", "event_id": "2489E9AD-2EE2-8E00-8EC9-32D5F69181C0", "handoff_id": "2489E9AD-2EE2-8E00-8EC9-32D5F69181C0", "message_id": "2489E9AD-2EE2-8E00-8EC9-32D5F69181C0", "owner_epoch": 1, "replayed": true, "resulting_lease_fence": 1, "state": "example", "version": 1, "work_item_id": "2489E9AD-2EE2-8E00-8EC9-32D5F69181C0"}Bad request
Media type application/json
object
Example generated
{}Unauthenticated
Media type application/json
object
Example generated
{}Forbidden
Media type application/json
object
Example generated
{}Not found
Media type application/json
object
Example generated
{}Conflict
Media type application/json
object
Example generated
{}Precondition failed
Media type application/json
object
Example generated
{}Required precondition missing
Media type application/json
object
Example generated
{}Rate limited
Media type application/json
object
Example generated
{}Current authority, custody or store evidence is unavailable; or, with code commit_outcome_unknown, the write was issued and its outcome was never learned, so it may be durable and must not be retried automatically
Media type application/json
object
Example generated
{}