---
title: "Stream status callback"
method: POST
path: "streamStatusCallback"
tags: ["Calls"]
---

# Stream status callback

`POST streamStatusCallback` (webhook)

Sent to your `status_url` when a background audio stream started with
`calling.stream` changes state. `params.state` is `streaming` when the stream
starts and `finished` when it ends.

Status callbacks are advisory, best-effort notifications — delivery can be delayed or fail silently, so don't gate time-critical actions on receiving one. See [Status callback reliability](/docs/platform/webhooks#status-callback-reliability).

## Payload

- object — Sent to your `status_url` when a background audio stream started with `calling.stream` changes state. `params.state` is `streaming` when the stream starts and `finished` when it ends. Status callbacks are advisory, best-effort notifications — delivery can be delayed or fail silently, so don't gate time-critical actions on receiving one. See [Status callback reliability](/docs/platform/webhooks#status-callback-reliability).
  - `event_type` 'calling.call.stream', required — The type of event. Always `calling.call.stream` for stream status callbacks.
  - `event_channel` string, required — The channel the event was delivered on.
  - `timestamp` number, required — When the event was sent, as a Unix timestamp in seconds.
  - `project_id` string, uuid, required — Your project ID.
  - `space_id` string, uuid, required — Your Space ID.
  - `params` object, required — Details about the stream.
    - `call_id` string, uuid, required — ID of the call being streamed.
    - `node_id` string, uuid, required — ID of the node the call is on.
    - `segment_id` string, uuid, required — ID of the call segment being streamed.
    - `tag` string — The tag associated with the call. Present only when a tag was set on the call.
    - `control_id` string, required — The control ID used to control the stream, as set in `calling.stream`.
    - `state` 'streaming' | 'finished', required — The stream state. `streaming` when the stream starts, `finished` when it ends.
    - `url` string, required — The WebSocket URL the audio is being streamed to.
    - `name` string — The friendly name of the stream. Present when a `name` was set on the stream.

## Acknowledgement `200`

Webhook received

---

[API](https://skmtc.net/signalwire/apis/signalwire-rest-api.md) · [All operations](https://skmtc.net/signalwire/apis/signalwire-rest-api/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/signalwire/signalwire-rest-api/versions/05c5164b85c7/schema)
