curl --request GET \
--url https://api.sendx.io/api/v1/rest/campaign/{identifier} \
--header 'X-Team-ApiKey: <api-key>'import requests
url = "https://api.sendx.io/api/v1/rest/campaign/{identifier}"
headers = {"X-Team-ApiKey": "<api-key>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {'X-Team-ApiKey': '<api-key>'}};
fetch('https://api.sendx.io/api/v1/rest/campaign/{identifier}', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://api.sendx.io/api/v1/rest/campaign/{identifier}",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
CURLOPT_HTTPHEADER => [
"X-Team-ApiKey: <api-key>"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"net/http"
"io"
)
func main() {
url := "https://api.sendx.io/api/v1/rest/campaign/{identifier}"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("X-Team-ApiKey", "<api-key>")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.get("https://api.sendx.io/api/v1/rest/campaign/{identifier}")
.header("X-Team-ApiKey", "<api-key>")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.sendx.io/api/v1/rest/campaign/{identifier}")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
request["X-Team-ApiKey"] = '<api-key>'
response = http.request(request)
puts response.read_body{
"id": "campaign_LUE9BTxmksSmqHWbh96zsn",
"name": "Spring Sale Campaign",
"trackReply": true,
"status": 1,
"scheduleType": 0,
"scheduleCondition": "2024-03-20",
"timeCondition": "10:00 PM",
"timezone": "America/New_York",
"preferredTimeCondition": "10:00 PM",
"preferredTimezone": "America/New_York",
"strategy": "Batch Sending",
"sendInContactsTimezone": true,
"smartSend": true,
"isArchived": false,
"sender": "sender_lN1aAQOmYEUp4LtH5szP3l",
"campaignScreenshotUrl": "https://cdn.sendx.io/campaigns/spring_sale_preview.png",
"includedLists": [
"list_0tOFLp5RgV7s3LNiHrjGYs",
"list_A1b2C3d4E5f6G7h8I9j0Kl"
],
"includedTags": [
"tag_6GN4DNyrHNt4KktCNG8PDO"
],
"excludedTags": [
"tag_Bv4Wq9Xp6Zn5Ly0Kt8JhQe"
],
"subject": "🌸 Spring Sale - Save up to 40%!"
}Get campaign by ID
Retrieves detailed information about a specific campaign.
curl --request GET \
--url https://api.sendx.io/api/v1/rest/campaign/{identifier} \
--header 'X-Team-ApiKey: <api-key>'import requests
url = "https://api.sendx.io/api/v1/rest/campaign/{identifier}"
headers = {"X-Team-ApiKey": "<api-key>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {'X-Team-ApiKey': '<api-key>'}};
fetch('https://api.sendx.io/api/v1/rest/campaign/{identifier}', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://api.sendx.io/api/v1/rest/campaign/{identifier}",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
CURLOPT_HTTPHEADER => [
"X-Team-ApiKey: <api-key>"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"net/http"
"io"
)
func main() {
url := "https://api.sendx.io/api/v1/rest/campaign/{identifier}"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("X-Team-ApiKey", "<api-key>")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.get("https://api.sendx.io/api/v1/rest/campaign/{identifier}")
.header("X-Team-ApiKey", "<api-key>")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.sendx.io/api/v1/rest/campaign/{identifier}")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
request["X-Team-ApiKey"] = '<api-key>'
response = http.request(request)
puts response.read_body{
"id": "campaign_LUE9BTxmksSmqHWbh96zsn",
"name": "Spring Sale Campaign",
"trackReply": true,
"status": 1,
"scheduleType": 0,
"scheduleCondition": "2024-03-20",
"timeCondition": "10:00 PM",
"timezone": "America/New_York",
"preferredTimeCondition": "10:00 PM",
"preferredTimezone": "America/New_York",
"strategy": "Batch Sending",
"sendInContactsTimezone": true,
"smartSend": true,
"isArchived": false,
"sender": "sender_lN1aAQOmYEUp4LtH5szP3l",
"campaignScreenshotUrl": "https://cdn.sendx.io/campaigns/spring_sale_preview.png",
"includedLists": [
"list_0tOFLp5RgV7s3LNiHrjGYs",
"list_A1b2C3d4E5f6G7h8I9j0Kl"
],
"includedTags": [
"tag_6GN4DNyrHNt4KktCNG8PDO"
],
"excludedTags": [
"tag_Bv4Wq9Xp6Zn5Ly0Kt8JhQe"
],
"subject": "🌸 Spring Sale - Save up to 40%!"
}- Complete campaign configuration
- Content and design information
- Targeting and segmentation rules
- Schedule and timezone settings
- Preview campaign before sending
- Check campaign status
- Review targeting settings
- Access campaign for editing
Authorizations
Team API key for authentication. Find your API key in SendX Settings → Team API Key.
Example:
X-Team-ApiKey: your_team_api_key_here
Path Parameters
Campaign identifier
campaign_IMBoxK2iB5sUdgiNOjqAMA
^(campaign_)?[a-zA-Z0-9]{22}$Response
✅ Campaign retrieved successfully
Internal campaign name
"Summer Sale 2024"
Email subject line
"🌞 Summer Sale - 50% Off Everything!"
Sender id
"sender_4vK3WFhMgvOwUNyaL4QxCD"
Campaign scheduling type.
Values:
0- Schedule later1- Send Now
datetime for scheduled campaigns (required if scheduleType=1)
"2024-12-30"
Campaign timezone
"America/New_York"
Included list IDs with prefix
^list_[a-zA-Z0-9]{22}$[
"list_vUCjsUmrVXtSppS8rD0Ssq",
"list_0tOFLp5RgV7s3LNiHrjGYs"
]
Excluded list IDs with prefix
^list_[a-zA-Z0-9]{22}$["list_Mn7Op8Qr9St0Uv1Wx2Yz3A"]
Unique ID for the campaign
"campaign_6h8DnYrHt4KktCnG8PDO5Z"
Email preview text
"Limited time offer - Shop now!"
HTML email content
Plain text email content
Campaign status.
Values:
0- Draft1- Scheduled2- Sending3- Sent4- Quarantined5- Evaluating6- Evaluation Failed7- Warming Up
Whether the campaign is archived
false
URL to the campaign screenshot
"https://cdn.sendx.io/campaigns/screenshot_abc123.png"
Time-related condition for the campaign
"9:00 AM"
Timezone for the scheduled send
"America/New_York"
Send at specified time in each contact's timezone
true
Preferred time condition, in case of smartSend and sendInContactTimeZone
"10:00 AM"
Preferred timezone for smart send optimization
"America/Los_Angeles"
Campaign delivery strategy
"Batch Sending"
Included segment IDs
^segment_[a-zA-Z0-9]{22}$["segment_engaged_30_days"]
Included tag IDs with prefix
^tag_[a-zA-Z0-9]{22}$[
"tag_6GN4DNyrHNt4KktCNG8PDO",
"tag_UhsDkjL772Qbj5lWtT62VK"
]
Excluded segment IDs
^segment_[a-zA-Z0-9]{22}$[]
Excluded tag IDs with prefix
^tag_[a-zA-Z0-9]{22}$["tag_Bv4Wq9Xp6Zn5Ly0Kt8JhQe"]
Was this page helpful?