Receive a post-call webhook from HiDesk
Sent by HiDesk after a call completes, to deliver final call status, transcript, summary, and recording link.
Authentication
The request body is signed by HiDesk with HMAC-SHA256 using the shared secret. The hex-encoded digest is sent in the X-HiDesk-Signature header.
anny verifies the signature against the raw request body before any JSON parsing. If verification fails the response is 401 Unauthorized.
Delivery requirements
- Deliver within 60 seconds of call end.
- Retry at least 3× with exponential backoff on any non-2xx response or timeout.
- anny deduplicates on
provider_call_id; redelivery of the same payload is safe and idempotent.
Correlation
provider_call_id is the same value HiDesk sent on POST /api/voice/incoming-call. anny uses it to look up the originating call session and merge the metadata into the resulting Customer Communication record.
Autorisierungen
HMAC-SHA256 signature of the raw request body, computed with the shared HiDesk integration secret and sent as a lowercase hex string.
Verified by anny before JSON parsing. Mismatch → 401 Unauthorized.
Header
Hex-encoded HMAC-SHA256 of the raw request body, computed with the shared HiDesk integration secret.
^[A-Fa-f0-9]{64}$Body
HiDesk's unique identifier for this call. Must match the value sent on POST /api/voice/incoming-call.
255"hd_01HZ4T8K5W3N6R8VYJ7A2QXM9P"
Event type. Currently the only supported value is call.completed.
call.completed Final call status:
completed— call connected and ended normally.missed— caller hung up before agent engagement.error— the agent or telephony layer raised an error during the call.
completed, missed, error Call start timestamp in ISO 8601 (UTC).
"2026-05-11T14:30:22Z"
Call end timestamp in ISO 8601 (UTC).
"2026-05-11T14:33:47Z"
Total connected call duration in seconds (telephony connect → telephony hangup).
x >= 0205
Direct link to view this call in the HiDesk UI. Surfaced in the anny admin dashboard.
"https://app.hidesk.com/calls/hd_01HZ4T8K5W3N6R8VYJ7A2QXM9P"
Portion of duration_seconds spent on a live-agent transfer, if any.
x >= 00
Full conversation transcript. null if transcription is disabled for this organization or the call did not produce text (e.g. missed).
AI-generated call summary. null if summarization is disabled or no useful content was produced.
URL to the raw WAV recording. null if recording is disabled. The link is short-lived; anny stores its own copy on receipt.
Antwort
OK — payload received and processed synchronously. Equivalent to 202 for retry purposes.