Get campaign progress
Authorization
AuthorizationheaderrequiredBearer YOUR_API_KEY. Create a key in the dashboard.
Path parameters
campaignIdstringrequiredCampaign ID. The same ID works as
broadcastIdon /v1.
Responses
200Progress.
statusstringrequiredCurrent status of the campaign.
pending_review: in the automated content review.pending_admin_review: the automated review passed and it waits for a person, which is where every channel but a WhatsApp campaign on an approved template goes.rejected: the review refused it; edit it and send again, or escalate.scheduledandsendingfollow approval.One ofdraftpending_reviewpending_admin_reviewapprovedrejectedescalatedrejected_finalscheduledsendingpausedcompletedcancelledfailedtotalintegerrequiredTotal contacts in broadcast.
pendingintegerrequiredNot yet queued for sending.
sendingintegerrequiredCurrently being sent.
sentintegerAccepted by the provider, delivery not confirmed yet.
deliveredintegerrequiredConfirmed delivered to the device.
failedintegerrequiredFailed to deliver.
skippedintegerrequiredSkipped (broadcast cancelled).
percentCompletenumberrequiredPercentage complete (0-100).
estimatedCostnumberEstimated total cost in USD.
reservedAmountnumberAmount reserved from balance in USD.
actualCostnumberActual cost so far in USD.
startedAtstring<date-time>estimatedCompletionAtstring<date-time>campaignIdstringrequired
401Unauthorized.
codestringrequiredmessagestringrequireddetailsobjectMachine-readable context. Keys that mean the same thing everywhere: -
errors: present on every400 invalid_requestfor an invalid body or query parameter,[{path, message, ...}],pathnaming the field (["to"],["contacts", 2, "recipient"],["limit"]). -recommendation: one sentence saying what to do next. -dashboardUrl: the dashboard screen that fixes it. -connect: on409 no_channel, the channels this project can connect to reach the recipient, each{type, request, note, available, dashboardUrl?};requestis the exact call (POST /v2/channelswith its body, orPOST /v2/numbers), or null for a channel connected from the dashboard (WhatsApp, Instagram, Messenger).available: falsesays why innote(one-way SMS closed until business verification is approved). -address/from: the address the error is about, under the name the request used for it.1 properties
errorsobject[]3 properties
pathobject[]requiredmessagestringrequiredcodestring
404Campaign not found, or it belongs to another project.
codestringrequiredmessagestringrequireddetailsobjectMachine-readable context. Keys that mean the same thing everywhere: -
errors: present on every400 invalid_requestfor an invalid body or query parameter,[{path, message, ...}],pathnaming the field (["to"],["contacts", 2, "recipient"],["limit"]). -recommendation: one sentence saying what to do next. -dashboardUrl: the dashboard screen that fixes it. -connect: on409 no_channel, the channels this project can connect to reach the recipient, each{type, request, note, available, dashboardUrl?};requestis the exact call (POST /v2/channelswith its body, orPOST /v2/numbers), or null for a channel connected from the dashboard (WhatsApp, Instagram, Messenger).available: falsesays why innote(one-way SMS closed until business verification is approved). -address/from: the address the error is about, under the name the request used for it.1 properties
errorsobject[]3 properties
pathobject[]requiredmessagestringrequiredcodestring