Campaign
Add campaign variables
Changed onRequires one of the following scopes: campaigns:update, campaigns:all, all:update, all:all
post/api/v2/campaigns/{id}/variables
Request
- Base URLhttps://api.instantly.ai
- URLhttps://api.instantly.ai/api/v2/campaigns/{id}/variables
- AuthHTTP bearer
Path parameters
idstring uuid required
Example:01a19e6f-87e0-765a-a14b-bc833acc42c0
Campaign ID
Request body
Example request
{
"variables": [
"firstName"
]
}Response
A campaign that can be sent to a list of recipients
Example response
{
"id": "01a19e6f-3f29-7bac-85ef-9e2b4696fd87",
"name": "My First Campaign",
"pl_value": 100,
"status": 1,
"campaign_schedule": {
"start_date": "2025-09-25",
"end_date": "2025-09-25",
"schedules": [
{
"name": "My Schedule",
"timing": {
"from": "09:00",
"to": "17:00"
},
"days": {
"0": true,
"1": true,
"2": true,
"3": true,
"4": true
},
"timezone": "Etc/GMT+12"
}
]
},
"sequences": [
{
"steps": [
{
"type": "email",
"delay": 2,
"delay_unit": "days",
"pre_delay": 2,
"pre_delay_unit": "days",
"variants": [
{
"subject": "Hello {{firstName}}",
"body": "Hey {{firstName}},<br/><br/>I hope you are doing well.",
"v_disabled": true
}
]
}
]
}
],
"timestamp_created": "2026-11-02T22:44:13.225Z",
"timestamp_updated": "2026-11-02T22:44:13.225Z",
"email_gap": 10,
"random_wait_max": 10,
"email_list": [
"john@doe.com"
],
"daily_limit": 100,
"email_tag_list": [
"01a19e6f-3f29-7bac-85ef-9e2c477ab551"
],
"link_tracking": true,
"open_tracking": true,
"daily_max_leads": 100,
"auto_variant_select": {
"trigger": "click_rate"
},
"not_sending_status": 2,
"limit_emails_per_company_override": {
"mode": "custom",
"daily_limit": 3,
"scope": "per_campaign"
},
"cc_list": [
"john@doe.com"
],
"bcc_list": [
"john@doe.com"
],
"organization": "01a19e6f-3f29-7bac-85ef-9e2d84e0d054",
"owned_by": "01a19e6f-3f29-7bac-85ef-9e2eadb676ae",
"created_by": "01a19e6f-3f29-7bac-85ef-9e2f125fb268",
"ai_sdr_id": "01a19e6f-3f29-7bac-85ef-9e30d98def52",
"provider_routing_rules": [
{
"action": "send",
"recipient_esp": [
"all"
],
"sender_esp": [
"all"
]
}
]
}Changes
- breaking
request body became required
- breaking
the request property
became required - info
added the optional property
to the response with the status
- breaking