Skip to content

Send or schedule a campaign

POST
/api/v2/flare/campaigns/{id}/send
curl --request POST \
--url https://api.sipstack.com/api/v2/flare/campaigns/2489E9AD-2EE2-8E00-8EC9-32D5F69181C0/send \
--header 'x-api-key: <x-api-key>'

Sends a draft campaign now, or activates a scheduled one, after running the full pre-send gate chain: an unsupported-merge-var check and the 10DLC carrier-safety content scan (SHAFT-DC, opt-out language, CTIA formatting) run before any state change, so a blocked campaign stays draft. Opted-out recipients are filtered at fan-out. Only draft or paused campaigns are sendable. Requires sms:send. This endpoint is subject to a tighter bulk-operation rate limit. The response carries the segment estimate (see FlareSegmentEstimate) and a UCS2_SEGMENT_INFLATION warning when special characters raise the segment count; it never blocks the send.

id
required
string format: uuid

Campaign scheduled (a scheduled campaign was activated for its future send time).

Media type application/json
object
success
boolean
message
string
campaign
object
uuid
string format: uuid
status
string
scheduledAt
string format: date-time
encoding
string
nullable
Allowed values: GSM-7 UCS-2
segmentsPerMessage
integer
nullable
estimatedTotalSegments
integer
nullable
estimatedDurationMinutes
integer
nullable
warnings
Array<object>
object
code

Special characters (emoji, symbols, curly quotes, hidden spaces) raise the segment count of a message.

string
Allowed values: UCS2_SEGMENT_INFLATION
characters
Array<string>
segmentsWithout

Segments per message with those characters replaced or removed.

integer
Example
{
"message": "Campaign scheduled successfully",
"campaign": {
"status": "scheduled"
},
"encoding": "GSM-7",
"warnings": [
{
"code": "UCS2_SEGMENT_INFLATION",
"characters": [
"☀",
"✨"
],
"segmentsWithout": 2
}
]
}

Campaign queued for immediate delivery.

Media type application/json
object
success
boolean
message
string
campaign
object
uuid
string format: uuid
status
string
startedAt
string format: date-time
encoding
string
nullable
Allowed values: GSM-7 UCS-2
segmentsPerMessage
integer
nullable
estimatedTotalSegments
integer
nullable
estimatedDurationMinutes
integer
nullable
warnings
Array<object>
object
code

Special characters (emoji, symbols, curly quotes, hidden spaces) raise the segment count of a message.

string
Allowed values: UCS2_SEGMENT_INFLATION
characters
Array<string>
segmentsWithout

Segments per message with those characters replaced or removed.

integer
Example
{
"message": "Campaign queued for delivery",
"campaign": {
"status": "active"
},
"encoding": "GSM-7",
"warnings": [
{
"code": "UCS2_SEGMENT_INFLATION",
"characters": [
"☀",
"✨"
],
"segmentsWithout": 2
}
]
}

Missing or invalid API key.

Media type application/json

Inline error shape used by the messaging API and management endpoints.

object
success
boolean
error
string
Example
{
"success": false,
"error": "Recipient phone number (to) is required"
}

The key is missing the sms:send scope, or the Flare API tier is not on your plan.

Media type application/json

Inline error shape used by the messaging API and management endpoints.

object
success
boolean
error
string
Example
{
"success": false,
"error": "Recipient phone number (to) is required"
}

Campaign not found in your organization.

Media type application/json

Inline error shape used by the messaging API and management endpoints.

object
success
boolean
error
string
Example
{
"success": false,
"error": "Recipient phone number (to) is required"
}

The campaign is not in a sendable state (already sending, scheduled, or sent).

Media type application/json

Inline error shape used by the messaging API and management endpoints.

object
success
boolean
error
string
Example
{
"success": false,
"error": "Recipient phone number (to) is required"
}

Blocked by the 10DLC content scan (code: CONTENT_SCAN_BLOCKED) or an unsupported merge variable (code: UNSUPPORTED_MERGE_VARS). The body’s details carries the scan reasons/violations.

Media type application/json

Inline error shape used by the messaging API and management endpoints.

object
success
boolean
error
string
Example
{
"success": false,
"error": "Recipient phone number (to) is required"
}