Skip to main content
PATCH
/
api
/
campaigns
/
{id}
Update a scheduled campaign
curl --request PATCH \
  --url https://your-instance.example.com/api/campaigns/{id} \
  --header 'Authorization: Bearer <token>' \
  --header 'Content-Type: application/json' \
  --data '
{
  "name": "Q2 Lead Gen (revised)",
  "message": "Hi {{firstName}}, quick follow-up — let me know if a 10-min call works.",
  "scheduleDate": "2026-05-22T16:00:00.000Z",
  "isAutopilot": false
}
'
{
  "success": true,
  "message": "Campaign created",
  "data": {
    "_id": "665f1a0c0e0a4b001a2c9f10",
    "name": "Q2 Lead Gen",
    "status": "scheduled",
    "scheduleDate": "2026-05-20T15:00:00.000Z"
  }
}

Authorizations

Authorization
string
header
required

Bearer authentication header of the form Bearer <token>, where <token> is your auth token.

Path Parameters

id
string
required

Body

application/json
name
string

Campaign display name shown in the campaigns list.

message
string

SMS body used when isAutopilot is false; supports {{firstName}}-style placeholders.

scheduleDate
string<date-time>

ISO timestamp when the campaign should fire; null sends immediately.

isAutopilot
boolean

When true, the AI prompt drives the campaign instead of using the message body verbatim.

process
string

Prompt _id used to drive AI replies for this campaign.

status
string

Lifecycle status: scheduled, sent, failed, partial success, or cancelled.

segmentProcesses
object[]

Per-segment overrides keyed by stage _id.

segmentStatuses
object[]

Per-segment overrides keyed by stage _id.

segmentSchedules
object[]

Per-segment overrides keyed by stage _id.

Response

Campaign updated

success
boolean
message
string
data
object
Example:
{
"_id": "665f1a0c0e0a4b001a2c9f10",
"organizationId": "64ee9a8b1e7f2a0011223344",
"name": "Q2 Lead Gen",
"message": "Hi {{firstName}}, are you still interested in a quote?",
"userIds": ["64ee9a8b1e7f2a0011223399"],
"scheduleDate": "2026-05-20T15:00:00.000Z",
"process": "64eea1110000000000000001",
"contactStatus": "New Lead",
"isAutopilot": false,
"type": "sms",
"status": "scheduled",
"createdBy": {
"_id": "64ee9a8b1e7f2a0011223399",
"fullName": "Alex Rep"
},
"failedUserIds": [],
"failedDetails": [],
"stats": {
"total": 250,
"sent": 0,
"failed": 0,
"successRate": "0%"
},
"createdAt": "2026-05-18T12:34:56.000Z",
"updatedAt": "2026-05-18T12:34:56.000Z"
}