Skip to main content

The preview-dial loop

Outbound-campaign operators run the dialer workspace. Progressive, predictive, and agentless campaigns fire through the pacing scheduler automatically; preview mode is the one where a human reviews each contact card before the call launches. That human loop compresses into two endpoints. First the agent’s frontend claims the next contact with GET /api/v1/dialer/next-call:
cURL
The claim is atomic — two agents polling concurrently never receive the same number — so the response is the work ticket the agent then reviews on their screen. preview_decision_seconds is the per-campaign review countdown; decision_expires_at is the server-side deadline for that countdown. 204 No Content means the campaign is progressive / predictive / agentless (calls fire automatically); 404 means the campaign is not active. A null contact means the list is drained. Once the agent clicks “Call” the dial launches:
cURL
The contact must still be in the dialing (claimed) state, or the request rejects with 409 CLAIM_NOT_HELD. The requesting operator records as the call’s agent for the TCPA audit trail, and the call itself exits through the Devotel softswitch — the preview loop never dials a number outside the commit path.