---
title: "session.status_changed"
method: POST
path: "sessionStatusChanged"
tags: ["Meeting Session Webhooks"]
---

# session.status_changed

`POST sessionStatusChanged` (webhook)

Sent when the session moves to a new lifecycle status. Deliveries are best effort and not guaranteed: up to 5 attempts with backoff that starts around 60 seconds and roughly doubles per retry, and a 10-second delivery timeout, so respond with a 2xx promptly. Retries can produce duplicates; deduplicate on envelope `id`.

## Headers

- `X-Meeting-Bot-Signature` string, required

## Payload

- object
  - `data` object, required — Status transition details.
    - `recording` boolean, required — Whether the session is recording at this lifecycle edge.
    - `session_id` string, required — The meeting session this event belongs to.
    - `status` string, required — The new session status.
    - `status_detail` string, nullable, required — Additional detail about the status (for example `timeout_exceeded_everyone_left` or `cancelled`), or null.
  - `event` 'session.status_changed', required — Event type.
  - `id` string, required — Unique event id; deduplicate deliveries on it.
  - `occurred_at` string, date-time, required — When the event occurred.
  - `version` string, required — Envelope version.

## Acknowledgement `200`

Return any 2xx status promptly to acknowledge the delivery; non-2xx responses and timeouts are retried.

---

[API](https://skmtc.net/team-telnyx/apis/telnyx-api-2.md) · [All operations](https://skmtc.net/team-telnyx/apis/telnyx-api-2/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/team-telnyx/telnyx-api-2/revisions/3fdc16374d70/schema)
