---
title: "Create Campaign"
method: POST
path: "/v1/campaigns"
tags: ["Campaigns"]
---

# Create Campaign

`POST /v1/campaigns`

Creates an outbound call campaign with the specified agent, caller number, and CSV contact list. Set isScheduled=true with scheduledDate, scheduledTime, and scheduledTimezone to defer launch. Returns the created campaign, including its campaignId.

## Response `201`

Created

- CampaignResponse — Full details of a campaign record. Includes the campaign's identity, current status, schedule configuration, the agent handling calls, and the caller phone number used to dial contacts.
  - `campaignId` string — Unique identifier for this campaign. Use this value as campaignId when updating, deleting, or triggering this campaign via the API.
  - `campaignName` string — 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.
  - `scheduledDate` string, 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.
  - `concurrentCalls` integer — 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.
  - `agent` AgentResponse — Agent assigned to handle all calls in this campaign. Contains the agent's ID, name, and current status. All contacts in the campaign's contact list will be called using this agent.
    - `name` string — The display name of the assigned agent.
    - `agentId` string — The unique identifier of the agent within the system.
    - `status` 'Live' | 'Testing' | 'Disabled' — The current operational status of the agent.
  - `phoneNumber` PhoneNumberResponse — Caller phone number used to dial contacts in this campaign. This number appears as the caller ID on recipients' devices.
    - `sipPhoneNumber` string — The caller’s phone number in +E.164 format. This number must be obtained from SigmaMind or configured using SIP trunking with SigmaMind.
    - `provider` 'twilio' | 'telnyx' | 'byo' — The service provider associated with the phone number.
    - `inboundAgentId` string — Default agent ID assigned to handle inbound calls for this phone number.
    - `outboundAgentId` string — Default agent ID assigned to handle outbound calls for this phone number.
    - `outboundPhoneNumber` string — The default outbound phone number of the callee, represented in +E.164 format
    - `active` boolean — Indicates whether the phone number is currently active and available for use.
    - `terminationSipURI` string — The SIP URI of the phone number, provided by the service provider for call termination.
    - `friendlyName` string — A user-friendly display name assigned to this phone number.
  - `errors` string[] — 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.
  - `scheduled` boolean

## Other responses

- `400` — Bad Request
- `401` — Unauthorized
- `403` — Forbidden
- `404` — Not Found
- `500` — Internal Server Error

---

[API](https://skmtc.net/sigmamind/apis/sigmamind-apis.md) · [All operations](https://skmtc.net/sigmamind/apis/sigmamind-apis/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/sigmamind/sigmamind-apis/versions/d00f52b5123f/schema)
