v1

latestOpenAPI 3.0.12026-07-226992320.0 KB
Campaigns

Update Campaign

Partially updates an existing campaign by campaignId. Only fields provided in the request body are updated — omitted fields remain unchanged. Returns the updated campaign record.

patch/v1/campaigns/{campaignId}

Path parameters

campaignIdstring required

Unique identifier of the campaign to update.

Request body

campaignNamestring

Display name for this campaign. Used to identify the campaign in listings, dashboards, and reports. Must be unique within your account.

sipPhoneNumberstring

Caller ID phone number used for all outbound calls in this campaign, in +E.164 format. Must be a number provisioned in SigmaMind or configured via SIP trunking that is enabled for outbound calls. This number appears on the recipient's device as the incoming caller.

agentIdstring

Unique identifier of the agent that will handle every call in this campaign. The agent controls the conversation flow, scripts, and tools used during each call. All contacts in the uploaded CSV will be called using this agent.

isScheduledboolean

Whether this campaign should be held and launched at a future date and time instead of starting immediately. When true, scheduledDate, scheduledTime, and scheduledTimezone are all required. When false or omitted, the campaign starts as soon as it is created.

scheduledDatestring date

Date on which the campaign should launch, in YYYY-MM-DD format. Required when isScheduled is true. Ignored when isScheduled is false or omitted. Must be a future date.

scheduledTimestring time

Time at which the campaign should launch on the scheduled date, in HH:mm:ss format. Required when isScheduled is true. Ignored when isScheduled is false or omitted. Interpreted in the timezone specified by scheduledTimezone.

scheduledTimezonestring

IANA timezone name used to interpret scheduledDate and scheduledTime. Required when isScheduled is true. Ignored when isScheduled is false or omitted. Use a valid IANA timezone identifier (e.g., 'America/Los_Angeles', 'Europe/London', 'Asia/Kolkata').

concurrentCallsinteger

Maximum number of calls the campaign is allowed to have active simultaneously. Controls the dialling throughput — a higher value dials more contacts in parallel. If omitted, the account default is used. Must be a positive integer.

dynamicVariablesobject

Default dynamic variable values applied to every call in the campaign when the CSV does not supply a value for a given variable. Keys must match variable names defined in the agent's configuration. Per-contact values in the CSV take precedence over these defaults. Leave empty if the CSV provides all required variables.

Example request

{
  "campaignName": "Q4 Outreach Campaign",
  "sipPhoneNumber": "+14155552671",
  "agentId": "D5D0p7TUs66TTAEAx",
  "isScheduled": true,
  "scheduledDate": "2025-09-25T00:00:00.000Z",
  "scheduledTime": "12:00:00",
  "scheduledTimezone": "America/Los_Angeles",
  "concurrentCalls": 5,
  "dynamicVariables": {
    "customer_name": "Michael"
  }
}

Response

OK

campaignIdstring

Unique identifier for this campaign. Use this value as campaignId when updating, deleting, or triggering this campaign via the API.

campaignNamestring

Display name of this campaign as set at creation time. Used to identify the campaign in listings and dashboards.

campaignStatus'live' | 'scheduled' | 'paused' | 'completed'

Current lifecycle state of the campaign. 'live' means the campaign is actively dialling contacts. 'scheduled' means the campaign is configured to launch at a future date and time. 'paused' means dialling has been suspended and can be resumed. 'completed' means all contacts have been dialled and the campaign has finished.

scheduledDatestring date-time

The date and time when this campaign is scheduled to launch, including timezone. Present only when isScheduled is true. Null for campaigns that started immediately at creation.

concurrentCallsinteger

Maximum number of calls allowed to be active simultaneously in this campaign. Determines dialling throughput — higher values dial more contacts in parallel. Reflects the value set at creation or last updated via the update endpoint.

errorsstring[]

List of validation errors encountered when processing the campaign's contact CSV file. Present only when the upload contained rows with invalid phone numbers or missing required variables. Null or empty when the file was processed without errors.

scheduledboolean

Example response

{
  "campaignId": "camp_XiQEBcj9cc5TFRB4",
  "campaignName": "Q4 Outreach Campaign",
  "campaignStatus": "live",
  "scheduledDate": "2025-09-25T19:00:00.000Z",
  "concurrentCalls": 5,
  "agent": {
    "name": "New AI Agent",
    "agentId": "agent_D5D0p7TUs66TTAEAx",
    "status": "Live"
  },
  "phoneNumber": {
    "sipPhoneNumber": "+14155552671",
    "provider": "twilio",
    "inboundAgentId": "agent_D5D0p7TUs66TTAEAx",
    "outboundAgentId": "agent_D5D0p7TUs66TTAEAx",
    "outboundPhoneNumber": "+14155552671",
    "active": true,
    "terminationSipURI": "sip.telnyx.com",
    "friendlyName": "Support Line - US"
  },
  "errors": [
    "Row 3: missing required variable 'customer_name'",
    "Row 7: invalid phone number '+1234'"
  ]
}