1MSG
ReferenceCampaigns API

List campaigns

GET
/api/v1/campaigns

Newest first, for the whole account. channelId limits the list to those channels. Repeat the parameter or pass a comma-separated list. Omit channelId to return every channel. limit defaults to 50, maximum 100. cursor is nextCursor from the previous page.

Authorization

bearer
headerAuthorizationBearer <token>

Key issued in Settings → Developer → API key. Inbox methods need the Inbox scope. Campaigns methods need the Campaigns scope.

Query Parameters

limit?string

Page size. Defaults to 50, maximum 100.

cursor?string

nextCursor from the previous page. Leave empty for the first page.

channelId?array<unknown>

Channel id. Repeat the parameter or pass a comma-separated list. Omit to list every channel.

Response Body

application/json
  1. response
items*array<>

Campaigns on this page, newest first.

nextCursor*|

Cursor for the next page, or null on the last page.

curl -X GET 'https://api.1msg.io/api/v1/campaigns'
{  "items": [    {      "id": "cm3campaign01",      "name": "April restock",      "channelId": "cm3channel01",      "segmentId": "cm3segment01",      "status": "draft",      "content": {        "mode": "text",        "text": "Hello"      },      "sentAt": "2026-11-01T09:00:00.000Z",      "scheduledAt": "2026-11-01T09:00:00.000Z",      "queuedRemaining": 0,      "sentThisPortion": 0,      "dailyLimit": 1000,      "nextPortionAt": null,      "createdAt": "2026-11-01T09:00:00.000Z",      "updatedAt": "2026-11-01T09:00:00.000Z"    }  ],  "nextCursor": null}