Campaigns

Update Campaign Settings

Updates a campaign's sending window, reply behaviour, bounce protection, and the mailboxes it sends from.

Only what you pass changes — omitted keys are left alone, and null clears a key back to its default. Omit send_from to leave the sender selection untouched.

send_from.mode picks one sender strategy and clears the other: team_members pools every mailbox owned by the named teammates (including any they connect later, sends spread evenly across the team), while specific_mailboxes uses exactly the named mailboxes. Ids and emails that aren't live in your organization are dropped rather than rejected.

Changing send_from requires the campaign to be paused — the pool re-resolves on every send, so a mid-flight change would reroute in-sequence leads. Everything else can be changed while the campaign is running.

To set the priority of tasks created on reply, patch the answering send step's config.replyTaskPriority — it is per-step, not a campaign setting.

Read current values from settings on Get Campaign and from Get Campaign Mailboxes.

patch/api/v1/campaigns/{campaign_id}/settings

Request

  • Base URL
    http://localhost:3009
  • Auth
    HTTP bearer

Path parameters

campaign_idstring required

Campaign ID

Request body

sending_window_startstring nullable

Earliest send time as HH:MM (24h, campaign timezone). null sends anytime — leave both window keys null for no restriction.

sending_window_endstring nullable

Latest send time as HH:MM (24h, campaign timezone). null sends anytime.

timezonestring

IANA timezone the sending window is measured in.

remove_on_replyboolean

Stop a lead's sequence as soon as they reply. Defaults to true.

create_task_on_replyboolean

Create a task when a lead replies. Defaults to true.

bounce_rate_limitnumber nullable

Auto-pause the campaign when the share of contacted leads whose emails bounce reaches this percentage. 0 turns protection off; otherwise 1–5. Lower is stricter and protects sender reputation sooner. null restores the default (5).

Example request

{
  "sending_window_start": "09:00",
  "sending_window_end": "17:30",
  "timezone": "America/New_York",
  "bounce_rate_limit": 3
}

Response

Default Response

statusinteger
messagestring

Changes

No recorded changes to this operation across all 1 revision of this API.