Get campaign with lead counts
Returns full campaign details including lead counts (total and active leads).
curl -X GET "https://api.sendkit.ai/v1/campaigns/example_string" \
-H "Content-Type: application/json" \
-H "X-Api-Key: YOUR_API_KEY"
import requests
import json
url = "https://api.sendkit.ai/v1/campaigns/example_string"
headers = {
"Content-Type": "application/json",
"X-Api-Key": "YOUR_API_KEY"
}
response = requests.get(url, headers=headers)
print(response.json())
const response = await fetch("https://api.sendkit.ai/v1/campaigns/example_string", {
method: "GET",
headers: {
"Content-Type": "application/json",
"X-Api-Key": "YOUR_API_KEY"
}
});
const data = await response.json();
console.log(data);
package main
import (
"fmt"
"net/http"
)
func main() {
req, err := http.NewRequest("GET", "https://api.sendkit.ai/v1/campaigns/example_string", nil)
if err != nil {
panic(err)
}
req.Header.Set("Content-Type", "application/json")
req.Header.Set("X-Api-Key", "YOUR_API_KEY")
client := &http.Client{}
resp, err := client.Do(req)
if err != nil {
panic(err)
}
defer resp.Body.Close()
fmt.Println("Response Status:", resp.Status)
}
require 'net/http'
require 'json'
uri = URI('https://api.sendkit.ai/v1/campaigns/example_string')
http = Net::HTTP.new(uri.host, uri.port)
http.use_ssl = true
request = Net::HTTP::Get.new(uri)
request['Content-Type'] = 'application/json'
request['X-Api-Key'] = 'YOUR_API_KEY'
response = http.request(request)
puts response.body
{
"success": true,
"data": {
"_id": "665a1b2c3d4e5f6a7b8c9d0e",
"name": "Q1 Outreach Campaign",
"userId": "664f0a1b2c3d4e5f6a7b8c9d",
"workspaceId": "664f0a1b2c3d4e5f6a7b8c9e",
"status": "active",
"mailboxCount": 3,
"mailboxRotation": "round-robin",
"sequence": [
{
"type": "email",
"name": "Initial Email",
"order": 0,
"subject": "Quick question, {{firstName}}",
"body": "<p>Hi {{firstName}},</p>"
}
],
"sendingSchedule": {
"timezone": "America/New_York",
"startTime": "09:00",
"endTime": "17:00",
"workingDays": [
1,
2,
3,
4,
5
]
},
"trackOpens": true,
"trackClicks": true,
"stopOnReply": true,
"includeUnsubscribeLink": false,
"emailIntervalMinutes": 15,
"stats": {
"sent": 150,
"delivered": 145,
"opened": 72,
"clicked": 18,
"replied": 12,
"bounced": 5,
"unsubscribed": 2
},
"leadCounts": {
"total": 500,
"active": 350
},
"startedAt": "2025-06-15T09:00:00.000Z",
"completedAt": null,
"createdAt": "2025-06-10T10:30:00.000Z",
"updatedAt": "2025-06-20T14:00:00.000Z"
}
}
{
"success": false,
"error": {
"code": "NOT_FOUND",
"message": "Campaign not found"
}
}
GET
/v1/campaigns/{campaignId}GET
Base URLstring
Target server for requests. Edit to use your own host.
API Key (header: X-Api-Key)
X-Api-Keystring
RequiredPlatform API key (sk_user_...) or Workspace API key (sk_...)
Platform API key (sk_user_...) or Workspace API key (sk_...)
path
campaignIdstring
RequiredCampaign ID
Request Preview
Response
Response will appear here after sending the request
Authentication
header
X-Api-Keystring
RequiredAPI Key for authentication. Platform API key (sk_user_...) or Workspace API key (sk_...)
Path Parameters
campaignIdstring
RequiredCampaign ID
Responses
successboolean
dataobject
Full campaign object plus leadCounts
_idstring
namestring
userIdstring
workspaceIdstring
statusstring
Allowed values:
draftactivepausedcompletedarchivedmailboxCountinteger
Number of mailboxes assigned to this campaign
mailboxRotationstring
Allowed values:
round-robinrandomprioritysequenceobject[]
sendingScheduleobject
timezonestring
startTimestring
endTimestring
workingDaysinteger[]
skipNationalHolidaysboolean
trackOpensboolean
trackClicksboolean
includeUnsubscribeLinkboolean
ccstring[]
bccstring[]
stopOnReplyboolean
stopOnAutoReplyboolean
stopOnCompanyReplyboolean
skipDNCboolean
emailIntervalMinutesinteger
espMatchingModestring
Allowed values:
disabledautosegCheckModestring
Allowed values:
disabledskip_allskip_providerssegSkipProvidersstring[]
Allowed values:
proofpointmimecastbarracudaciscoforcepointsophostrendmicrosymantecmcafeemicrosoft_atpgoogle_postinicnameTrackingobject
enabledboolean
domainstring
verifiedboolean
slackChannelIdstring
positiveRepliesOnlySlackboolean
webhookobject
enabledboolean
urlstring
secretstring
eventsstring[]
copyFatigueProtectionobject
enabledboolean
autoRegenerateboolean
autoResumeboolean
variantOptimizationobject
enabledboolean
minimumSendsPerVariantinteger
minimumDaysinteger
optimizationMetricstring
keepMinimumVariantsinteger
statsobject
sentinteger
deliveredinteger
openedinteger
clickedinteger
repliedinteger
bouncedinteger
unsubscribedinteger
leadCountsobject
Lead count summary for this campaign
totalinteger
Total leads (excluding removed)
activeinteger
Currently active leads
startedAtstring
completedAtstring
createdAtstring
updatedAtstring
Campaign not found
Was this page helpful?