Validate readiness
Check whether a draft campaign is ready to launch and get every reason it is not.
Before you launch a draft campaign, check that it is ready. The validate endpoint runs the same readiness rules the creation wizard uses — leads attached, a valid sequence, and selected sending accounts. It is read-only and mutates nothing.
Launch performs additional provider-side checks that this endpoint does not run
(for example email content and sending-inbox warmup), so a campaign that is
ready here may still be refused at launch.
The response reports every failing rule at once, so you can fix everything in one pass rather than discovering issues one at a time.
Request
curl -H "Authorization: Bearer acq_org_..." \
https://api.acquisity.ai/v1/workspaces/{workspaceId}/campaigns/{campaignId}/validateRequires the campaigns:read scope.
Response
When the campaign is not ready, ready is false and failures lists each
failing rule. Branch on the stable rule identifier; the message is for
display only and may change.
{
"data": {
"campaignId": "123e4567-e89b-12d3-a456-426614174000",
"workspaceId": "223e4567-e89b-42d3-a456-426614174001",
"ready": false,
"failures": [
{ "rule": "leads_missing", "message": "No leads are attached to this campaign." },
{ "rule": "sending_accounts_missing", "message": "No sending accounts are selected for this campaign." }
],
"links": {
"self": "https://api.acquisity.ai/v1/workspaces/223e4567-e89b-42d3-a456-426614174001/campaigns/123e4567-e89b-12d3-a456-426614174000/validate",
"campaign": "https://api.acquisity.ai/v1/workspaces/223e4567-e89b-42d3-a456-426614174001/campaigns/123e4567-e89b-12d3-a456-426614174000"
}
}
}When the campaign passes every rule, ready is true and failures is empty:
{
"data": {
"campaignId": "123e4567-e89b-12d3-a456-426614174000",
"workspaceId": "223e4567-e89b-42d3-a456-426614174001",
"ready": true,
"failures": [],
"links": { "self": "...", "campaign": "..." }
}
}Rules
| Rule identifier | Cause | Remedy |
|---|---|---|
leads_missing | No leads are attached to the campaign. | Add leads to the campaign before launching. |
sequence_missing | The campaign has no valid email sequence — no step has at least one variant. | Attach a sequence with at least one step and one variant. |
sending_accounts_missing | No sending accounts are selected for the campaign. | Select at least one sending account for the campaign. |
A campaign that is already past draft state reports ready: true with no
failures. A missing or foreign-workspace campaignId returns 404 Not Found.