API resource

Broadcasts and contacts

Message many people at once. Contacts are the people a workspace can reach (import them with their phone number for WhatsApp); a broadcast sends one template or message to a list or a tagged segment, now or on a schedule; a sequence sends a timed series. On WhatsApp every recipient is a billed template delivery, so only message people who opted in.

Cancel broadcast

POST/v1/broadcasts/{broadcastId}/cancel

Works on: WhatsApp, Instagram, Facebook, X, Reddit

Cancel a scheduled or in-progress broadcast. Already-sent messages are not affected.

Path parameters

broadcastIdstringrequired

curl -X POST "https://creatoros-production-5658.up.railway.app/v1/broadcasts/obj_Bc4Kq8Vw1Nx6Ty3Lm9Rc2Hb7Js5Df0Ga8Ue4Ki1Oq6B/cancel" \
  -H "Authorization: Bearer $CREATOROS_API_KEY"
Response 200
{
  "success": true,
  "broadcast": {
    "id": "string",
    "status": "string"
  }
}

List broadcast recipients

GET/v1/broadcasts/{broadcastId}/recipients

Works on: WhatsApp, Instagram, Facebook, X, Reddit

Returns recipients for a broadcast with individual delivery status. Filter by status.

Path parameters

broadcastIdstringrequired

Query parameters

statusstring

One of: pending, sent, delivered, read, failed.

limitinteger

skipinteger

curl "https://creatoros-production-5658.up.railway.app/v1/broadcasts/obj_Bc4Kq8Vw1Nx6Ty3Lm9Rc2Hb7Js5Df0Ga8Ue4Ki1Oq6B/recipients" \
  -H "Authorization: Bearer $CREATOROS_API_KEY"
Response 200
{
  "success": true,
  "recipients": [
    {
      "id": "string",
      "contactId": "obj_Ct9Wm3Kq1Vz6Ny4Lb8Hc2Jr5Pd0Fs7Ga3Ue9Ki1Oq4C",
      "channelId": "1234567890123456789",
      "platformIdentifier": "string",
      "contactName": "string",
      "status": "pending",
      "messageId": "4455667788990011223",
      "error": "string",
      "errorCode": 0,
      "errorExplanation": "string",
      "errorTraceId": "string",
      "sentAt": "2026-10-10T00:00:00.000Z",
      "deliveredAt": "2026-10-10T00:00:00.000Z",
      "readAt": "2026-10-10T00:00:00.000Z"
    }
  ],
  "pagination": {
    "total": 0,
    "limit": 0,
    "skip": 0,
    "hasMore": true
  },
  "summary": {
    "total": 0,
    "pending": 0,
    "sent": 0,
    "delivered": 0,
    "read": 0,
    "failed": 0
  }
}

Add recipients to a broadcast

POST/v1/broadcasts/{broadcastId}/recipients

Works on: WhatsApp, Instagram, Facebook, X, Reddit

Add recipients by contact IDs, raw phone numbers, or from the broadcast's segment filters.

Path parameters

broadcastIdstringrequired

Body

contactIdsstring[]

Specific contact IDs to add. Creator OS contact ids (24-character hex), as returned by the list-contacts endpoint. A platform identifier such as a WhatsApp wa_id is rejected with 400; use phones for raw numbers.

phonesstring[]

Raw phone numbers (auto-creates contacts). Useful for WhatsApp/Telegram manual entry

useSegmentboolean

Auto-populate from broadcast segment filters

curl -X POST "https://creatoros-production-5658.up.railway.app/v1/broadcasts/obj_Bc4Kq8Vw1Nx6Ty3Lm9Rc2Hb7Js5Df0Ga8Ue4Ki1Oq6B/recipients" \
  -H "Authorization: Bearer $CREATOROS_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "contactIds": [
      "string"
    ]
  }'
Response 200
{
  "success": true,
  "added": 0,
  "skipped": 0
}

Schedule broadcast for later

POST/v1/broadcasts/{broadcastId}/schedule

Works on: WhatsApp, Instagram, Facebook, X, Reddit

Schedule a draft broadcast to be sent at a future date and time.

Path parameters

broadcastIdstringrequired

Body

scheduledAtstringrequired

curl -X POST "https://creatoros-production-5658.up.railway.app/v1/broadcasts/obj_Bc4Kq8Vw1Nx6Ty3Lm9Rc2Hb7Js5Df0Ga8Ue4Ki1Oq6B/schedule" \
  -H "Authorization: Bearer $CREATOROS_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "scheduledAt": "2026-10-10T00:00:00.000Z"
  }'
Response 200
{
  "success": true,
  "broadcast": {
    "id": "string",
    "status": "string",
    "scheduledAt": "2026-10-10T00:00:00.000Z"
  }
}

Send broadcast now

POST/v1/broadcasts/{broadcastId}/send

Works on: WhatsApp, Instagram, Facebook, X, Reddit

Immediately start sending a draft broadcast to its recipients.

Path parameters

broadcastIdstringrequired

curl -X POST "https://creatoros-production-5658.up.railway.app/v1/broadcasts/obj_Bc4Kq8Vw1Nx6Ty3Lm9Rc2Hb7Js5Df0Ga8Ue4Ki1Oq6B/send" \
  -H "Authorization: Bearer $CREATOROS_API_KEY"
Response 200
{
  "success": true,
  "status": "sending",
  "sent": 0,
  "failed": 0,
  "recipientCount": 0
}

Delete broadcast

DELETE/v1/broadcasts/{broadcastId}

Works on: WhatsApp, Instagram, Facebook, X, Reddit

Permanently delete a broadcast. Only drafts can be deleted.

Path parameters

broadcastIdstringrequired

curl -X DELETE "https://creatoros-production-5658.up.railway.app/v1/broadcasts/obj_Bc4Kq8Vw1Nx6Ty3Lm9Rc2Hb7Js5Df0Ga8Ue4Ki1Oq6B" \
  -H "Authorization: Bearer $CREATOROS_API_KEY"
Response 200
{
  "ok": true
}

Get broadcast details

GET/v1/broadcasts/{broadcastId}

Works on: WhatsApp, Instagram, Facebook, X, Reddit

Returns a broadcast with its full configuration and delivery stats.

Path parameters

broadcastIdstringrequired

curl "https://creatoros-production-5658.up.railway.app/v1/broadcasts/obj_Bc4Kq8Vw1Nx6Ty3Lm9Rc2Hb7Js5Df0Ga8Ue4Ki1Oq6B" \
  -H "Authorization: Bearer $CREATOROS_API_KEY"
Response 200
{
  "success": true,
  "broadcast": {
    "id": "string",
    "name": "string",
    "description": "string",
    "platform": "whatsapp",
    "accountId": "acc_Wa2Qp7Vz4Ny9Tx1Lm6Rc3Wb8Js5Df0Ga7Ue2Ki4Oq9W",
    "message": {
      "text": "string"
    },
    "template": {
      "name": "string",
      "language": "string"
    },
    "segmentFilters": {
      "tags": [
        "string"
      ],
      "isSubscribed": true,
      "customFields": {}
    },
    "status": "draft",
    "scheduledAt": "2026-10-10T00:00:00.000Z",
    "startedAt": "2026-10-10T00:00:00.000Z",
    "completedAt": "2026-10-10T00:00:00.000Z",
    "recipientCount": 0,
    "sentCount": 0,
    "deliveredCount": 0,
    "readCount": 0,
    "failedCount": 0,
    "createdAt": "2026-10-10T00:00:00.000Z",
    "updatedAt": "2026-10-10T00:00:00.000Z"
  }
}

Update broadcast

PATCH/v1/broadcasts/{broadcastId}

Works on: WhatsApp, Instagram, Facebook, X, Reddit

Update a broadcast's name, message, template, or segment filters. Only draft broadcasts can be updated.

Path parameters

broadcastIdstringrequired

Body

namestring

descriptionstring

messageobject

Generic message payload (used for non-WhatsApp platforms).

templateobject

WhatsApp template payload (used when platform is whatsapp).

segmentFiltersobject

Recipient segment filters (tags, channels, subscription state).

curl -X PATCH "https://creatoros-production-5658.up.railway.app/v1/broadcasts/obj_Bc4Kq8Vw1Nx6Ty3Lm9Rc2Hb7Js5Df0Ga8Ue4Ki1Oq6B" \
  -H "Authorization: Bearer $CREATOROS_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "name": "string"
  }'
Response 200
{
  "success": true,
  "broadcast": {
    "id": "string",
    "name": "string",
    "description": "string",
    "status": "string",
    "updatedAt": "2026-10-10T00:00:00.000Z"
  }
}

List broadcasts

GET/v1/broadcasts

Works on: WhatsApp, Instagram, Facebook, X, Reddit

Returns broadcasts with delivery stats. Filter by status, platform, or profile.

Query parameters

statusstring

One of: draft, scheduled, sending, completed, failed, cancelled.

platformstring

limitinteger

skipinteger

curl "https://creatoros-production-5658.up.railway.app/v1/broadcasts" \
  -H "Authorization: Bearer $CREATOROS_API_KEY"
Response 200
{
  "success": true,
  "broadcasts": [
    {
      "id": "string",
      "name": "string",
      "description": "string",
      "platform": "whatsapp",
      "accountId": "acc_Wa2Qp7Vz4Ny9Tx1Lm6Rc3Wb8Js5Df0Ga7Ue2Ki4Oq9W",
      "accountName": "string",
      "status": "draft",
      "messagePreview": "string",
      "scheduledAt": "2026-10-10T00:00:00.000Z",
      "startedAt": "2026-10-10T00:00:00.000Z",
      "completedAt": "2026-10-10T00:00:00.000Z",
      "recipientCount": 0,
      "sentCount": 0,
      "deliveredCount": 0,
      "readCount": 0,
      "failedCount": 0,
      "createdAt": "2026-10-10T00:00:00.000Z"
    }
  ],
  "pagination": {
    "total": 0,
    "limit": 0,
    "skip": 0,
    "hasMore": true
  }
}

Create broadcast draft

POST/v1/broadcasts

Works on: WhatsApp, Instagram, Facebook, X, Reddit

Create a broadcast in draft status. Add recipients and then send or schedule it.

Body

accountIdstringrequired

platformstringrequired

namestringrequired

descriptionstring

messageobject

templateobject

WhatsApp template (required when platform is whatsapp)

segmentFiltersobject

curl -X POST "https://creatoros-production-5658.up.railway.app/v1/broadcasts" \
  -H "Authorization: Bearer $CREATOROS_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "accountId": "acc_Wa2Qp7Vz4Ny9Tx1Lm6Rc3Wb8Js5Df0Ga7Ue2Ki4Oq9W",
    "platform": "whatsapp",
    "name": "string"
  }'
Response 200
{
  "success": true,
  "broadcast": {
    "id": "string",
    "name": "string",
    "description": "string",
    "platform": "whatsapp",
    "accountId": "acc_Wa2Qp7Vz4Ny9Tx1Lm6Rc3Wb8Js5Df0Ga7Ue2Ki4Oq9W",
    "status": "string",
    "createdAt": "2026-10-10T00:00:00.000Z"
  }
}

Bulk create contacts

POST/v1/contacts/bulk

Works on: WhatsApp, Instagram, Facebook, X, Reddit

Import up to 1000 contacts at a time. Skips duplicates, merging any new tags onto the existing contact. accountId is required whenever contacts carry a platformIdentifier (or a row-level accountId); platform is always derived from the resolved account, never used to decide whether channels are created, and a mismatched platform 404s as account not found. When accountId is set, each contact must carry a platformIdentifier; a row missing it is rejected individually (reported in errors[], HTTP 200), not a 400 for the whole import.

Body

accountIdstring

Required when contacts carry channel data (platformIdentifier or a row-level accountId). Omit for a plain CRM import with no channels.

platformstring

Ignored when accountId is set: the platform is derived from the resolved account. Only relevant to disambiguate accountId lookup; a mismatch 404s.

contactsobject[]required

curl -X POST "https://creatoros-production-5658.up.railway.app/v1/contacts/bulk" \
  -H "Authorization: Bearer $CREATOROS_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "contacts": [
      {
        "name": "string",
        "platformIdentifier": "string",
        "displayIdentifier": "string",
        "email": "string",
        "company": "string",
        "tags": [
          "string"
        ]
      }
    ]
  }'
Response 200
{
  "success": true,
  "created": 0,
  "skipped": 0,
  "errors": [
    "string"
  ],
  "total": 0
}

List channels for a contact

GET/v1/contacts/{contactId}/channels

Works on: WhatsApp, Instagram, Facebook, X, Reddit

Returns all messaging channels linked to a contact (e.g. Instagram DM, Telegram, WhatsApp).

Path parameters

contactIdstringrequired

curl "https://creatoros-production-5658.up.railway.app/v1/contacts/obj_Ct9Wm3Kq1Vz6Ny4Lb8Hc2Jr5Pd0Fs7Ga3Ue9Ki1Oq4C/channels" \
  -H "Authorization: Bearer $CREATOROS_API_KEY"
Response 200
{
  "success": true,
  "channels": [
    {
      "id": "string",
      "accountId": "acc_Wa2Qp7Vz4Ny9Tx1Lm6Rc3Wb8Js5Df0Ga7Ue2Ki4Oq9W",
      "platform": "whatsapp",
      "platformIdentifier": "string",
      "displayIdentifier": "string",
      "isSubscribed": true,
      "conversationId": "string",
      "metadata": {},
      "createdAt": "2026-10-10T00:00:00.000Z"
    }
  ]
}

Clear custom field value

DELETE/v1/contacts/{contactId}/fields/{slug}

Works on: WhatsApp, Instagram, Facebook, X, Reddit

Remove a custom field value from a contact. The field definition is not affected.

Path parameters

contactIdstringrequired

slugstringrequired

curl -X DELETE "https://creatoros-production-5658.up.railway.app/v1/contacts/obj_Ct9Wm3Kq1Vz6Ny4Lb8Hc2Jr5Pd0Fs7Ga3Ue9Ki1Oq4C/fields/plan" \
  -H "Authorization: Bearer $CREATOROS_API_KEY"
Response 200
{
  "ok": true
}

Set custom field value

PUT/v1/contacts/{contactId}/fields/{slug}

Works on: WhatsApp, Instagram, Facebook, X, Reddit

Set or overwrite a custom field value on a contact. The value type must match the field definition.

Path parameters

contactIdstringrequired

slugstringrequired

Body

valuestringrequired

Field value (type depends on field definition)

curl -X PUT "https://creatoros-production-5658.up.railway.app/v1/contacts/obj_Ct9Wm3Kq1Vz6Ny4Lb8Hc2Jr5Pd0Fs7Ga3Ue9Ki1Oq4C/fields/plan" \
  -H "Authorization: Bearer $CREATOROS_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "value": "string"
  }'
Response 200
{
  "ok": true
}

Delete contact

DELETE/v1/contacts/{contactId}

Works on: WhatsApp, Instagram, Facebook, X, Reddit

Permanently deletes a contact and all associated channels.

Path parameters

contactIdstringrequired

curl -X DELETE "https://creatoros-production-5658.up.railway.app/v1/contacts/obj_Ct9Wm3Kq1Vz6Ny4Lb8Hc2Jr5Pd0Fs7Ga3Ue9Ki1Oq4C" \
  -H "Authorization: Bearer $CREATOROS_API_KEY"
Response 200
{
  "ok": true
}

Get contact

GET/v1/contacts/{contactId}

Works on: WhatsApp, Instagram, Facebook, X, Reddit

Returns a contact with all associated messaging channels.

Path parameters

contactIdstringrequired

curl "https://creatoros-production-5658.up.railway.app/v1/contacts/obj_Ct9Wm3Kq1Vz6Ny4Lb8Hc2Jr5Pd0Fs7Ga3Ue9Ki1Oq4C" \
  -H "Authorization: Bearer $CREATOROS_API_KEY"
Response 200
{
  "success": true,
  "contact": {
    "id": "string",
    "name": "string",
    "email": "string",
    "company": "string",
    "avatarUrl": "string",
    "tags": [
      "string"
    ],
    "isSubscribed": true,
    "isBlocked": true,
    "messagesSentCount": 0,
    "messagesReceivedCount": 0,
    "lastMessageSentAt": "2026-10-10T00:00:00.000Z",
    "lastMessageReceivedAt": "2026-10-10T00:00:00.000Z",
    "customFields": {},
    "notes": "string",
    "conversationIds": [
      "string"
    ],
    "createdAt": "2026-10-10T00:00:00.000Z",
    "updatedAt": "2026-10-10T00:00:00.000Z"
  },
  "channels": [
    {
      "id": "string",
      "accountId": "acc_Wa2Qp7Vz4Ny9Tx1Lm6Rc3Wb8Js5Df0Ga7Ue2Ki4Oq9W",
      "platform": "whatsapp",
      "platformIdentifier": "string",
      "displayIdentifier": "string",
      "isSubscribed": true,
      "conversationId": "string",
      "lastActiveAt": "2026-10-10T00:00:00.000Z",
      "createdAt": "2026-10-10T00:00:00.000Z"
    }
  ]
}

Update contact

PATCH/v1/contacts/{contactId}

Works on: WhatsApp, Instagram, Facebook, X, Reddit

Update one or more fields on a contact. Only provided fields are changed.

Path parameters

contactIdstringrequired

Body

namestring

emailstring

companystring

avatarUrlstring

tagsstring[]

isSubscribedboolean

isBlockedboolean

notesstring

curl -X PATCH "https://creatoros-production-5658.up.railway.app/v1/contacts/obj_Ct9Wm3Kq1Vz6Ny4Lb8Hc2Jr5Pd0Fs7Ga3Ue9Ki1Oq4C" \
  -H "Authorization: Bearer $CREATOROS_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "name": "string"
  }'
Response 200
{
  "success": true,
  "contact": {
    "id": "string",
    "name": "string",
    "email": "string",
    "company": "string",
    "avatarUrl": "string",
    "tags": [
      "string"
    ],
    "isSubscribed": true,
    "isBlocked": true,
    "notes": "string",
    "updatedAt": "2026-10-10T00:00:00.000Z"
  }
}

List contacts

GET/v1/contacts

Works on: WhatsApp, Instagram, Facebook, X, Reddit

List and search contacts for a profile. Supports filtering by tags, platform, subscription status, and text search on name, email and company.

Query parameters

accountIdstring

Filter by the account that owns the contact channel. Contacts are resolved through their channels, so the profileId contact filter is not applied while accountId is set. A profileId sent alongside is still access-checked and still scopes the returned filters.tags list.

searchstring

Case-insensitive substring match on the contact name, email and company. Phone numbers and other platform identifiers are not matched: they live on the contact channel, not on the contact. To reach a contact from an inbox webhook, use the conversation.contactId it already carries.

tagstring

tagsstring

Comma-separated tags, matches contacts carrying any of them

platformstring

One of: instagram, facebook, telegram, twitter, bluesky, reddit, whatsapp, slack, sms.

isSubscribedstring

One of: true, false.

limitinteger

skipinteger

curl "https://creatoros-production-5658.up.railway.app/v1/contacts" \
  -H "Authorization: Bearer $CREATOROS_API_KEY"
Response 200
{
  "success": true,
  "contacts": [
    {
      "id": "string",
      "name": "string",
      "email": "string",
      "company": "string",
      "avatarUrl": "string",
      "tags": [
        "string"
      ],
      "isSubscribed": true,
      "isBlocked": true,
      "lastMessageSentAt": "2026-10-10T00:00:00.000Z",
      "lastMessageReceivedAt": "2026-10-10T00:00:00.000Z",
      "messagesSentCount": 0,
      "messagesReceivedCount": 0,
      "customFields": {},
      "notes": "string",
      "createdAt": "2026-10-10T00:00:00.000Z",
      "platform": "whatsapp",
      "platformIdentifier": "string",
      "displayIdentifier": "string"
    }
  ],
  "filters": {
    "tags": [
      "string"
    ]
  },
  "pagination": {
    "total": 0,
    "limit": 0,
    "skip": 0,
    "hasMore": true
  }
}

Create contact

POST/v1/contacts

Works on: WhatsApp, Instagram, Facebook, X, Reddit

Create a new contact. Optionally create a platform channel in the same request by providing accountId, platform, and platformIdentifier.

Body

namestringrequired

emailstring

companystring

tagsstring[]

isSubscribedboolean

notesstring

accountIdstring

Optional. Creates a channel if provided with platform + platformIdentifier

platformstring

Channel platform. Only the enum values support contact channels; any other platform is rejected with code platform_not_supported.

platformIdentifierstring

displayIdentifierstring

curl -X POST "https://creatoros-production-5658.up.railway.app/v1/contacts" \
  -H "Authorization: Bearer $CREATOROS_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "name": "string"
  }'
Response 200
{
  "success": true,
  "contact": {
    "id": "string",
    "name": "string",
    "email": "string",
    "company": "string",
    "tags": [
      "string"
    ],
    "isSubscribed": true,
    "isBlocked": true,
    "customFields": {},
    "notes": "string",
    "createdAt": "2026-10-10T00:00:00.000Z"
  },
  "channel": {
    "id": "string",
    "platform": "whatsapp",
    "platformIdentifier": "string",
    "displayIdentifier": "string"
  },
  "warning": "string"
}

Delete custom field

DELETE/v1/custom-fields/{fieldId}

Works on: WhatsApp, Instagram, Facebook, X, Reddit

Delete a custom field definition and remove its values from all contacts.

Path parameters

fieldIdstringrequired

curl -X DELETE "https://creatoros-production-5658.up.railway.app/v1/custom-fields/obj_Cf5Lm9Rc2Hb7Js5Df0Ga8Ue4Ki1Oq6Kq8Vw1Nx6F" \
  -H "Authorization: Bearer $CREATOROS_API_KEY"
Response 200
{
  "ok": true
}

Update custom field

PATCH/v1/custom-fields/{fieldId}

Works on: WhatsApp, Instagram, Facebook, X, Reddit

Update a custom field definition. The field type cannot be changed after creation.

Path parameters

fieldIdstringrequired

Body

namestring

optionsstring[]

curl -X PATCH "https://creatoros-production-5658.up.railway.app/v1/custom-fields/obj_Cf5Lm9Rc2Hb7Js5Df0Ga8Ue4Ki1Oq6Kq8Vw1Nx6F" \
  -H "Authorization: Bearer $CREATOROS_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "name": "string"
  }'
Response 200
{
  "success": true,
  "field": {
    "id": "string",
    "name": "string",
    "slug": "plan",
    "type": "string",
    "options": [
      "string"
    ]
  }
}

List custom field definitions

GET/v1/custom-fields

Works on: WhatsApp, Instagram, Facebook, X, Reddit

Returns all custom field definitions. Optionally filter by profile.
curl "https://creatoros-production-5658.up.railway.app/v1/custom-fields" \
  -H "Authorization: Bearer $CREATOROS_API_KEY"
Response 200
{
  "success": true,
  "fields": [
    {
      "id": "string",
      "name": "string",
      "slug": "plan",
      "type": "text",
      "options": [
        "string"
      ],
      "createdAt": "2026-10-10T00:00:00.000Z"
    }
  ]
}

Create custom field

POST/v1/custom-fields

Works on: WhatsApp, Instagram, Facebook, X, Reddit

Create a new custom field definition. Supported types are text, number, date, boolean, and select.

Body

namestringrequired

slugstring

Auto-generated from name if not provided

typestringrequired

optionsstring[]

Required for select type

curl -X POST "https://creatoros-production-5658.up.railway.app/v1/custom-fields" \
  -H "Authorization: Bearer $CREATOROS_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "name": "string",
    "type": "text"
  }'
Response 200
{
  "success": true,
  "field": {
    "id": "string",
    "name": "string",
    "slug": "plan",
    "type": "text",
    "options": [
      "string"
    ],
    "createdAt": "2026-10-10T00:00:00.000Z"
  }
}

Activate sequence

POST/v1/sequences/{sequenceId}/activate

Works on: WhatsApp, Instagram, Facebook, X, Reddit

Start a draft or paused sequence. The sequence must have at least one step.

Path parameters

sequenceIdstringrequired

curl -X POST "https://creatoros-production-5658.up.railway.app/v1/sequences/obj_Sq2Qp7Vz4Ny9Tx1Lm6Rc3Wb8Js5Df0Ga7Ue2Ki4Oq9S/activate" \
  -H "Authorization: Bearer $CREATOROS_API_KEY"
Response 200
{
  "success": true,
  "sequence": {
    "id": "string",
    "status": "string"
  }
}

Unenroll contact

DELETE/v1/sequences/{sequenceId}/enroll/{contactId}

Works on: WhatsApp, Instagram, Facebook, X, Reddit

Remove a contact from a sequence. No further messages will be sent to this contact.

Path parameters

sequenceIdstringrequired

contactIdstringrequired

curl -X DELETE "https://creatoros-production-5658.up.railway.app/v1/sequences/obj_Sq2Qp7Vz4Ny9Tx1Lm6Rc3Wb8Js5Df0Ga7Ue2Ki4Oq9S/enroll/obj_Ct9Wm3Kq1Vz6Ny4Lb8Hc2Jr5Pd0Fs7Ga3Ue9Ki1Oq4C" \
  -H "Authorization: Bearer $CREATOROS_API_KEY"
Response 200
{
  "ok": true
}

Enroll contacts in a sequence

POST/v1/sequences/{sequenceId}/enroll

Works on: WhatsApp, Instagram, Facebook, X, Reddit

Enroll one or more contacts into a sequence. Contacts already enrolled are skipped.

Path parameters

sequenceIdstringrequired

Body

contactIdsstring[]required

channelIdsstring[]

Optional. Auto-detected if not provided.

curl -X POST "https://creatoros-production-5658.up.railway.app/v1/sequences/obj_Sq2Qp7Vz4Ny9Tx1Lm6Rc3Wb8Js5Df0Ga7Ue2Ki4Oq9S/enroll" \
  -H "Authorization: Bearer $CREATOROS_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "contactIds": [
      "string"
    ]
  }'
Response 200
{
  "success": true,
  "enrolled": 0,
  "failed": 0,
  "results": [
    {
      "contactId": "obj_Ct9Wm3Kq1Vz6Ny4Lb8Hc2Jr5Pd0Fs7Ga3Ue9Ki1Oq4C",
      "success": true,
      "error": "string"
    }
  ]
}

List enrollments for a sequence

GET/v1/sequences/{sequenceId}/enrollments

Works on: WhatsApp, Instagram, Facebook, X, Reddit

Returns enrolled contacts with their progress, status, and next scheduled step.

Path parameters

sequenceIdstringrequired

Query parameters

statusstring

One of: active, completed, exited, paused.

limitinteger

skipinteger

curl "https://creatoros-production-5658.up.railway.app/v1/sequences/obj_Sq2Qp7Vz4Ny9Tx1Lm6Rc3Wb8Js5Df0Ga7Ue2Ki4Oq9S/enrollments" \
  -H "Authorization: Bearer $CREATOROS_API_KEY"
Response 200
{
  "success": true,
  "enrollments": [
    {
      "id": "string",
      "contactId": "obj_Ct9Wm3Kq1Vz6Ny4Lb8Hc2Jr5Pd0Fs7Ga3Ue9Ki1Oq4C",
      "channelId": "1234567890123456789",
      "platformIdentifier": "string",
      "contactName": "string",
      "currentStepIndex": 0,
      "status": "active",
      "exitReason": "string",
      "nextStepAt": "2026-10-10T00:00:00.000Z",
      "stepsSent": 0,
      "lastStepSentAt": "2026-10-10T00:00:00.000Z",
      "createdAt": "2026-10-10T00:00:00.000Z"
    }
  ],
  "pagination": {
    "total": 0,
    "limit": 0,
    "skip": 0,
    "hasMore": true
  }
}

Pause sequence

POST/v1/sequences/{sequenceId}/pause

Works on: WhatsApp, Instagram, Facebook, X, Reddit

Pause an active sequence. Enrolled contacts stop receiving messages until the sequence is reactivated.

Path parameters

sequenceIdstringrequired

curl -X POST "https://creatoros-production-5658.up.railway.app/v1/sequences/obj_Sq2Qp7Vz4Ny9Tx1Lm6Rc3Wb8Js5Df0Ga7Ue2Ki4Oq9S/pause" \
  -H "Authorization: Bearer $CREATOROS_API_KEY"
Response 200
{
  "success": true,
  "sequence": {
    "id": "string",
    "status": "string"
  }
}

Delete sequence

DELETE/v1/sequences/{sequenceId}

Works on: WhatsApp, Instagram, Facebook, X, Reddit

Permanently delete a sequence. Active enrollments are stopped.

Path parameters

sequenceIdstringrequired

curl -X DELETE "https://creatoros-production-5658.up.railway.app/v1/sequences/obj_Sq2Qp7Vz4Ny9Tx1Lm6Rc3Wb8Js5Df0Ga7Ue2Ki4Oq9S" \
  -H "Authorization: Bearer $CREATOROS_API_KEY"
Response 200
{
  "ok": true
}

Get sequence with steps

GET/v1/sequences/{sequenceId}

Works on: WhatsApp, Instagram, Facebook, X, Reddit

Returns a sequence with all its steps and enrollment stats.

Path parameters

sequenceIdstringrequired

curl "https://creatoros-production-5658.up.railway.app/v1/sequences/obj_Sq2Qp7Vz4Ny9Tx1Lm6Rc3Wb8Js5Df0Ga7Ue2Ki4Oq9S" \
  -H "Authorization: Bearer $CREATOROS_API_KEY"
Response 200
{
  "success": true,
  "sequence": {
    "id": "string",
    "name": "string",
    "description": "string",
    "platform": "whatsapp",
    "accountId": "acc_Wa2Qp7Vz4Ny9Tx1Lm6Rc3Wb8Js5Df0Ga7Ue2Ki4Oq9W",
    "status": "draft",
    "steps": [
      {
        "order": 0,
        "delayMinutes": 0,
        "message": {},
        "template": {}
      }
    ],
    "exitOnReply": true,
    "exitOnUnsubscribe": true,
    "totalEnrolled": 0,
    "totalCompleted": 0,
    "totalExited": 0,
    "createdAt": "2026-10-10T00:00:00.000Z",
    "updatedAt": "2026-10-10T00:00:00.000Z"
  }
}

Update sequence

PATCH/v1/sequences/{sequenceId}

Works on: WhatsApp, Instagram, Facebook, X, Reddit

Update a sequence's name, steps, or exit conditions. Steps can only be modified while the sequence is draft or paused.

Path parameters

sequenceIdstringrequired

Body

namestring

descriptionstring

stepsobject[]

Replace the full step list. Only allowed while the sequence is draft or paused.

exitOnReplyboolean

exitOnUnsubscribeboolean

curl -X PATCH "https://creatoros-production-5658.up.railway.app/v1/sequences/obj_Sq2Qp7Vz4Ny9Tx1Lm6Rc3Wb8Js5Df0Ga7Ue2Ki4Oq9S" \
  -H "Authorization: Bearer $CREATOROS_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "name": "string"
  }'
Response 200
{
  "success": true,
  "sequence": {
    "id": "string",
    "name": "string",
    "description": "string",
    "status": "string",
    "steps": [
      {}
    ],
    "exitOnReply": true,
    "exitOnUnsubscribe": true,
    "updatedAt": "2026-10-10T00:00:00.000Z"
  }
}

List sequences

GET/v1/sequences

Works on: WhatsApp, Instagram, Facebook, X, Reddit

Returns sequences with enrollment stats. Filter by status, platform, or profile.

Query parameters

statusstring

One of: draft, active, paused.

limitinteger

skipinteger

curl "https://creatoros-production-5658.up.railway.app/v1/sequences" \
  -H "Authorization: Bearer $CREATOROS_API_KEY"
Response 200
{
  "success": true,
  "sequences": [
    {
      "id": "string",
      "name": "string",
      "description": "string",
      "platform": "whatsapp",
      "accountId": "acc_Wa2Qp7Vz4Ny9Tx1Lm6Rc3Wb8Js5Df0Ga7Ue2Ki4Oq9W",
      "accountName": "string",
      "messagePreview": "string",
      "status": "draft",
      "stepsCount": 0,
      "exitOnReply": true,
      "exitOnUnsubscribe": true,
      "totalEnrolled": 0,
      "totalCompleted": 0,
      "totalExited": 0,
      "createdAt": "2026-10-10T00:00:00.000Z"
    }
  ],
  "pagination": {
    "total": 0,
    "limit": 0,
    "skip": 0,
    "hasMore": true
  }
}

Create sequence

POST/v1/sequences

Works on: WhatsApp, Instagram, Facebook, X, Reddit

Create a multi-step messaging sequence. Each step has a delay and a message or WhatsApp template.

Body

accountIdstringrequired

platformstringrequired

namestringrequired

descriptionstring

stepsobject[]

exitOnReplyboolean

exitOnUnsubscribeboolean

curl -X POST "https://creatoros-production-5658.up.railway.app/v1/sequences" \
  -H "Authorization: Bearer $CREATOROS_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "accountId": "acc_Wa2Qp7Vz4Ny9Tx1Lm6Rc3Wb8Js5Df0Ga7Ue2Ki4Oq9W",
    "platform": "whatsapp",
    "name": "string"
  }'
Response 200
{
  "success": true,
  "sequence": {
    "id": "string",
    "name": "string",
    "description": "string",
    "platform": "whatsapp",
    "status": "string",
    "stepsCount": 0,
    "createdAt": "2026-10-10T00:00:00.000Z"
  }
}