{
"id": "00000000-0000-4000-8000-000000000002",
"ownerId": "user_example",
"type": "call.completed",
"resourceType": "calls",
"resourceId": "call_example_789",
"data": {
"id": "call_example_789"
},
"createdAt": "2026-10-08T12:00:00.000Z",
"apiVersion": "v2",
"workspaceId": "org_example"
}Resource reference event
PowerDialer sends this POST to your verified receiver when a subscribed resource changes. This is an incoming payload for your server, not an endpoint to call on the PowerDialer API.
Verify PowerDialer-Signature against the exact raw request bytes using your subscription signing secret. The timestamp is in milliseconds; reject timestamps more than five minutes away. Then durably accept the event and return any 2xx response within 15 seconds. Handle slower work in your own background process.
Deliveries can repeat. Deduplicate on the body id: automatic retries and manual replays keep that event ID. PowerDialer-Delivery-Id identifies the delivery and PowerDialer-Attempt-Id changes on each attempt. The payload contains a resource reference, not a full snapshot; fetch the current resource or remove it locally for a deletion/access-revoked event.
{
"id": "00000000-0000-4000-8000-000000000002",
"ownerId": "user_example",
"type": "call.completed",
"resourceType": "calls",
"resourceId": "call_example_789",
"data": {
"id": "call_example_789"
},
"createdAt": "2026-10-08T12:00:00.000Z",
"apiVersion": "v2",
"workspaceId": "org_example"
}Headers
Format: t=TIMESTAMP,v1=SIGNATURE. TIMESTAMP is Unix time in milliseconds. SIGNATURE is the hex HMAC-SHA256 of timestamp + dot + raw request body, using the subscription signing secret. Reject timestamps outside a five-minute window.
Stable delivery ID, reused when this delivery is retried or replayed.
Unique ID for this attempt. A retry or replay receives a new attempt ID.
Body
Stable event ID, reused across automatic retries and manual replays.
Change that produced the event.
contact.created, contact.updated, contact.deleted, list.created, list.updated, list.deleted, list.membership_updated, call.created, call.updated, call.deleted, call.completed, call.disposition_updated, recording.available, transcript.available, contact.access_revoked, list.access_revoked "call.completed"
Webhook payload contract version.
v2 Event creation time in UTC.
Workspace owning the event.
Member attributed to the resource.
Resource type.
contacts, lists, calls Resource identifier; calls use callSid.
Resource ID reference. Fetch the resource separately when you need its current content.
Show child attributes
Show child attributes
Response
Event durably accepted. Any 2xx succeeds. Deduplicate by event ID; delivery is at least once.