> This page is for APIs.

> Fetch clean Markdown by appending `.md` to any page URL under https://signalwire.com/docs or requesting it with the HTTP header `Accept: text/markdown`. The root index at https://signalwire.com/docs/llms.txt lists the available documentation indexes.

# Collect status callback

POST 

Sent to the `status_url` of a `calling.collect` command with each collect result: the digits
or speech collected, or why nothing was.

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).

Reference: https://signalwire.com/docs/apis/rest/webhooks/collect-status-callback

## Request

### Payload

- `event_type` (enum, required) — The type of event. Always `calling.call.collect` for collect status callbacks.
  - Allowed values: `calling.call.collect`
- `event_channel` (string, required) — The channel the event was delivered on.
- `timestamp` (double, required) — When the event was sent, as a Unix timestamp in seconds.
- `project_id` (string, required) — Your project ID.
- `space_id` (string, required) — Your Space ID.
- `params` (WebhooksCallingCollectStatusCallbackPayloadParams, required) — The collect operation and its result.

## Types

### WebhooksCallingCollectStatusCallbackPayloadParams

The collect operation and its result.

- `call_id` (string, required) — ID of the call.
- `node_id` (string, required) — ID of the node the call is on.
- `control_id` (string, required) — The control ID of the collect operation, as set in `calling.collect`.
- `result` (WebhooksCallingCollectStatusCallbackPayloadParamsResult, required) — The collect result. `type` is `digit` or `speech` when input was collected, with the input in `params`. Other values (`no_input`, `no_match`, `start_of_input`, `finished`, `error`) carry no `params`.
- `final` (boolean, optional) — Whether this is the final result. Present when `partial_results` is enabled: `false` for a partial result, `true` for the final one.
- `state` (enum, optional) — The state of a `continuous` collect. Present only for continuous collects.
  - Allowed values: `collecting`, `finished`, `error`

### WebhooksCallingCollectStatusCallbackPayloadParamsResult

The collect result. `type` is `digit` or `speech` when input was collected, with the input in `params`. Other values (`no_input`, `no_match`, `start_of_input`, `finished`, `error`) carry no `params`.

- `type` (string, required) — The result type.
- `params` (WebhooksCallingCollectStatusCallbackPayloadParamsResultParams, optional) — The collected input. For `digit`: `digits` and `terminator`, both strings. For `speech`: `text` (string) and `confidence` (number).

### WebhooksCallingCollectStatusCallbackPayloadParamsResultParams

The collected input. For `digit`: `digits` and `terminator`, both strings. For `speech`: `text` (string) and `confidence` (number).