Skip to navigation

Delete session

View as Markdown

Delete a session. A 202 Accepted response confirms that the platform accepted the request to end the session; it does not confirm that the session has ended. The deferred session.ended webhook confirms termination and carries the matching operation_uuid. If the Session is a Room participant, it leaves only that Room participation and room.participant.left is emitted before session.ended; other Room participants remain connected.

If the session is already ending, the endpoint returns 202 with status: completed and already_ended: true without sending another termination command.

Tip: This endpoint disconnects a Session whether or not its call has been answered. Use Reject an incoming call for an unanswered inbound call or Cancel an unanswered outgoing call for an unanswered outbound call; those endpoints return 409 Conflict after the call is answered.

Triggered webhooks: room.participant.left (deferred, only when the Session is in a Room), session.ended (deferred)

See Session lifecycle events for complete payload schemas and examples.

Authentication

AuthorizationBearer

Send Authorization: Bearer <app_uuid>:<api_key> using an active API key. See Authentication for details.

Path parameters

uuidstringRequired

Session identifier.

Headers

Idempotency-KeystringOptionalformat: "^[a-zA-Z0-9._-]*$"<=128 characters

Optional key for safely retrying mutating requests. An explicitly empty header is treated like omission and does not enable replay protection. See Idempotency for details.

Operation-IdstringOptionalformat: "uuid"

optional client-supplied lowercase RFC-4122 v4 UUID returned as operation_uuid; platform generates one when omitted; correlation metadata distinct from Idempotency-Key.

Response headers

traceparentstringOptionalformat: "^00-[0-9a-f]{32}-[0-9a-f]{16}-[0-9a-f]{2}$"=55 characters

Server-owned W3C Trace Context for correlating this response with support and observability data. It is present on successful and error responses. A valid incoming traceparent is linked to, but never becomes, the server-owned trace identifier.

Response

Command accepted for async execution
operation_uuidstring
statusenum
Allowed values:
already_endedtrueOptional

Optional. Set to true on idempotent terminal commands when the session was already in a terminal state at the time the request was received. Absent otherwise.

Errors

400
Bad Request Error
401
Unauthorized Error
404
Not Found Error
406
Not Acceptable Error
409
Conflict Error
413
Content Too Large Error
415
Unsupported Media Type Error
422
Unprocessable Entity Error
500
Internal Server Error
503
Service Unavailable Error