ArgorantDocs

Errors

The error envelope, the status codes you will hit and what to do about each.

Every error is JSON with a detail string. Validation errors from the framework carry a detail array instead; treat both as "read detail".

JSON
{ "detail": "window_start must be HH:MM (24h), e.g. 08:00" }
StatusMeaningDo
400The request is malformed or a rule was brokenRead detail, fix the field
401No or invalid keyMint a key, send it as a bearer token
402The plan does not include thisThe detail carries an upgrade URL
403Key lacks the permission or scopeAsk an owner for the right, or a scope on the OAuth grant
404Not yours or does not existCheck the id; workspaces are isolated
409Preconditione.g. stop a campaign before deleting it, launch blockers, built-in status cannot be removed
422Body failed validationdetail lists the fields
429Daily allowance or burst limitWait for Retry-After, then retry
5xxOur sideRetry with backoff; the request was not applied

Launch blockers

POST /api/v1/campaigns/{id}/launch refuses with 409 while the campaign has no complete email, no active sender with capacity or no queued lead. GET /api/v1/campaigns/{id} returns the same list as launch_blockers, so an agent can resolve them before trying.

Idempotency

Creating campaigns, lists and exports is not idempotent; enrolling leads is (duplicates are skipped and reported as duplicates_skipped). Webhook deliveries are replay-safe through X-Argorant-Delivery.

On this page