---
title: "List Campaigns"
method: GET
path: "/v1/campaigns"
tags: ["Campaigns"]
---

# List Campaigns

`GET /v1/campaigns`

Returns a paginated list of campaigns for the account, sorted by most recently created first. Use the status parameter to filter by lifecycle state. Use page and size to navigate through results.

## Query parameters

- `status` string
- `page` integer
- `size` integer

## Response `200`

OK

- PaginatedResponseCampaignResponse — Standard wrapper for paginated API responses. Use this when returning list data that is split across multiple pages. Includes the current page of results along with pagination metadata to help clients navigate through large datasets efficiently.
  - `data` CampaignResponse[] — List of items for the current page. Contains up to 'size' number of records.
    - `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
  - `page` integer — Current page number (0-based index). Indicates which page of results is being returned.
  - `size` integer — Number of items requested per page. Determines the maximum size of the 'data' list.
  - `totalCount` integer — Total number of records available across all pages. Useful for calculating pagination on the client side.
  - `totalPages` integer — Total number of pages available based on totalCounts and size. Helps clients understand how many pages exist in total.
  - `hasNext` boolean — Indicates whether there is a next page available after the current one. Useful for implementing 'Load More' or next navigation.
  - `hasPrevious` boolean — Indicates whether there is a previous page before the current one. Useful for enabling backward navigation.

## 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)
