Delete session
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
Send Authorization: Bearer <app_uuid>:<api_key> using an active API key. See Authentication for details.
Path parameters
Session identifier.
Headers
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.
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
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
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.