null if none is scheduled).
Use this to track cycle-by-cycle progress without polling the campaigns endpoint.
- Trigger: A cycle iteration of a Campaign completes (regardless of whether more iterations follow).
- Applies to: Phone-call campaigns with cycles enabled.
Request
- Method:
POST - Content-Type:
application/json - Endpoint: The URL you configure in your webhook integration.
- Authentication:
X-Altur-Signatureheader for HMAC verification. See Webhooks Overview.
Payload Example
Envelope Fields
| Field | Type | Description |
|---|---|---|
event_id | string | Unique identifier for this delivery. Use for idempotent processing. |
event_type | string | Always campaign.cycle_completed. |
occurred_at | string | ISO 8601 timestamp in the project’s timezone. |
api_version | string | Webhook payload schema version (currently 1.0). |
project_id | string | Public identifier of the project that owns the campaign. |
data | object | Event payload (see below). |
data Object
| Field | Type | Description |
|---|---|---|
campaign | object | Compact campaign summary (id, name, status, previous_status). previous_status is null for this event. |
cycle_iteration | int | null | The iteration number that just completed. |
next_cycle_at | string | null | ISO 8601 timestamp of the next scheduled iteration in the project’s timezone, or null if no further iterations. |
Response
Return200 OK to confirm receipt. Failures are retried per the delivery retry policy.
Receiver Examples
For signature verification, seeis_valid_signature in the Webhooks Overview.