curl --request GET \
--url https://api.lemlist.com/api/campaigns \
--header 'Authorization: Basic <encoded-value>'import requests
url = "https://api.lemlist.com/api/campaigns"
headers = {"Authorization": "Basic <encoded-value>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {Authorization: 'Basic <encoded-value>'}};
fetch('https://api.lemlist.com/api/campaigns', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));require 'uri'
require 'net/http'
url = URI("https://api.lemlist.com/api/campaigns")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
request["Authorization"] = 'Basic <encoded-value>'
response = http.request(request)
puts response.read_body<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://api.lemlist.com/api/campaigns",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
CURLOPT_HTTPHEADER => [
"Authorization: Basic <encoded-value>"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}[
{
"_id": "cam_4HrZbi8xsez4QlrnL",
"name": "Product Launch Campaign",
"labels": [],
"createdAt": "2025-02-20T14:45:54.230Z",
"createdBy": "usr_zdTCrNFyXblc4mrYK",
"status": "running",
"hasError": true,
"errors": [
"Your campaign does not have sender."
]
},
{
"_id": "cam_k3gu2sa4KIfhRK34M",
"name": "Sales Outreach 2025",
"labels": [],
"createdAt": "2025-02-05T09:00:07.541Z",
"createdBy": "usr_UEvrOEP0CTAYEoFR4",
"status": "running",
"hasError": true,
"errors": [
"One of your sender has no email provider.",
"Your campaign have an invalid sender mailbox"
]
},
{
"_id": "cam_HcFmYEhnCI39Pscan",
"name": "CRM Integration Test",
"labels": [
"CRM"
],
"createdAt": "2023-01-27T14:58:52.482Z",
"createdBy": "usr_i52PiQtbq8SucjVTM",
"status": "running",
"hasError": true,
"errors": [
"One of your sender has no email provider.",
"Your campaign have an invalid sender mailbox"
]
},
{
"_id": "cam_yZXeC6q3SXs3ha1FI",
"name": "Customer Onboarding",
"labels": [],
"createdAt": "2022-06-14T13:32:57.880Z",
"createdBy": "usr_i52PiQtbq8SucjVTM",
"status": "running"
}
]"No API key provided""The authentication you supplied is incorrect""User linked to this API key is blocked""No user found for this API key"Get Many Campaigns
Retrieves a paginated list of all campaigns in your team.
curl --request GET \
--url https://api.lemlist.com/api/campaigns \
--header 'Authorization: Basic <encoded-value>'import requests
url = "https://api.lemlist.com/api/campaigns"
headers = {"Authorization": "Basic <encoded-value>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {Authorization: 'Basic <encoded-value>'}};
fetch('https://api.lemlist.com/api/campaigns', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));require 'uri'
require 'net/http'
url = URI("https://api.lemlist.com/api/campaigns")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
request["Authorization"] = 'Basic <encoded-value>'
response = http.request(request)
puts response.read_body<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://api.lemlist.com/api/campaigns",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
CURLOPT_HTTPHEADER => [
"Authorization: Basic <encoded-value>"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}[
{
"_id": "cam_4HrZbi8xsez4QlrnL",
"name": "Product Launch Campaign",
"labels": [],
"createdAt": "2025-02-20T14:45:54.230Z",
"createdBy": "usr_zdTCrNFyXblc4mrYK",
"status": "running",
"hasError": true,
"errors": [
"Your campaign does not have sender."
]
},
{
"_id": "cam_k3gu2sa4KIfhRK34M",
"name": "Sales Outreach 2025",
"labels": [],
"createdAt": "2025-02-05T09:00:07.541Z",
"createdBy": "usr_UEvrOEP0CTAYEoFR4",
"status": "running",
"hasError": true,
"errors": [
"One of your sender has no email provider.",
"Your campaign have an invalid sender mailbox"
]
},
{
"_id": "cam_HcFmYEhnCI39Pscan",
"name": "CRM Integration Test",
"labels": [
"CRM"
],
"createdAt": "2023-01-27T14:58:52.482Z",
"createdBy": "usr_i52PiQtbq8SucjVTM",
"status": "running",
"hasError": true,
"errors": [
"One of your sender has no email provider.",
"Your campaign have an invalid sender mailbox"
]
},
{
"_id": "cam_yZXeC6q3SXs3ha1FI",
"name": "Customer Onboarding",
"labels": [],
"createdAt": "2022-06-14T13:32:57.880Z",
"createdBy": "usr_i52PiQtbq8SucjVTM",
"status": "running"
}
]"No API key provided""The authentication you supplied is incorrect""User linked to this API key is blocked""No user found for this API key"version=v2.Authorizations
Basic authentication header of the form Basic <encoded-value>, where <encoded-value> is the base64-encoded string username:password.
Query Parameters
Offset from the start. For pagination.
Number of campaigns to retrieve. Default: 100. Maximum: 100.
Set to 'v2' to use the latest version
v2 Page number to retrieve
The field by which to sort. Currently, only 'createdAt' is supported.
createdAt The sort direction. Use 'desc' for descending order; any other value (or omission) will sort in ascending order.
asc, desc The campaign status. Can be: running, draft, archived, ended, paused, errors. Note: a campaign can be in multiple statuses at one time (e.g., a paused campaign with errors).
running, draft, archived, ended, paused, errors Filter campaigns by creator user ID (usr_xxx format). Only returns campaigns created by the specified user.
Response
Success
Unique campaign identifier
Campaign name
Categorization labels
Creation timestamp
Creator user ID
Campaign status
running, paused, draft, ended, archived, errors Main sequence ID
Associated schedule IDs
ID of the team that owns this campaign
Whether the campaign has errors
List of error messages if campaign has errors
Campaign creator information
Show child attributes
Show child attributes
Campaign senders configuration
Show child attributes
Show child attributes
Was this page helpful?