Send Campaign
Sends a draft campaign now, or schedules it. A scheduled_at in the future schedules the campaign. Without it, or with a time in the past, sending starts now. Call it again on a scheduled campaign to change the time or send it now. The response is 202, because the emails go out from a queue after it returns. Needs a Full key. A key limited to one domain answers 403. Send an optional Idempotency-Key header to retry safely. See Idempotency.
Before it sends, Inboxjot checks that the from address is on a verified domain, the campaign has a subject and content, your postal address is set in Settings, and at least one subscribed contact matches the audience. The daily sending limit and domain warmup still apply, so a large campaign can pause and go on the next day. paused_reason then says why.
{ "id": "cpg_06d2mfk8r7hm4ps9wb2kd", "name": "October product update", "status": "scheduled", "from": "Acme <hello@acme.dev>", "reply_to": null, "subject": "What’s new in October", "preheader": "Scheduled sends are here", "html": "<!DOCTYPE html><html>…</html>", "text": "Hi Suhasinee, scheduled sends are here…", "template_id": null, "template": null, "include_segment_ids": [ "seg_06d2mfk8r2kd7fq4mx9ab" ], "include_segments": [ { "id": "seg_06d2mfk8r2kd7fq4mx9ab", "name": "Customers" } ], "exclude_segment_ids": [], "exclude_segments": [], "topic_id": "top_06d2mfk8r6pn2tc8yw3hd", "topic": { "id": "top_06d2mfk8r6pn2tc8yw3hd", "name": "Product updates" }, "audience_count": null, "queued_count": 0, "skipped_count": 0, "paused_reason": null, "failure_reason": null, "scheduled_at": "2026-10-22T09:00:00.000Z", "started_at": null, "completed_at": null, "warmup_next_limit": null, "created_at": "2026-10-21T09:00:00.000Z", "updated_at": "2026-10-21T09:00:00.000Z" }
Accepted. The campaign is scheduled or sending.
Path Parameters
The campaign id.
Body Parameters
Response
The campaign id.
The campaign name.
draft, scheduled, sending, paused, failed, sent or canceled.
The from address.
The reply-to address.
The subject.
The preview text.
The rendered HTML, or null before there is content.
The plain text version.
The id of the linked template.
The linked template.
The ids of the segments it sends to.
The segments it sends to.
The ids of the segments it leaves out.
The segments it leaves out.
The id of the topic.
The topic.
How many contacts the campaign goes to, once it starts.
Emails queued so far.
Contacts skipped, such as suppressed addresses.
Why a paused campaign stopped: manual, daily_limit, warmup, sending_paused or domain_unverified.
Why a failed campaign stopped.
When a scheduled campaign starts.
When sending started.
When sending finished.
The daily limit of the next warmup step when domain warmup paused the campaign, otherwise null.
When it was created.
When it last changed.