Launch a campaign: activate + run the launch pipeline (alias /send)
Changed onMarks the campaign ready: sets status: active and runs the full launch pipeline campaign-keyed (sender gate, duplicate auto-cancel, per-account scheduling). Idempotent on an already-active campaign.
Launch is "mark ready", never "force". There are NO override knobs: send windows, daily caps, spacing, and duplicate settings are the campaign's own persisted config, set through the agent, never per-call. POST /campaigns/{campaignId}/send is an alias. ?dryRun=true returns { dryRun: true, campaignId, wouldLaunch: true } with no writes.
Request
- Base URLhttps://origami.chat/api/v2
- URLhttps://origami.chat/api/v2/campaigns/{campaignId}/launch
- AuthHTTP bearer
Query parameters
Headers
Transport-level replay protection: any v2 POST may send it (1-255 printable ASCII characters; UUIDs recommended). The first response for a key is recorded and replayed verbatim for retries with the same key + method/path/body for 24 hours; replayed responses carry the Idempotency-Replay: true response header. Reusing a key with a different request, or retrying while the original is still in flight, returns 409 IDEMPOTENCY_ERROR. 5xx responses are never recorded (the retry re-executes).
Response
The transition result, or the dryRun report.
Changes
- info
added the non-success response with the status
- info