Skip to main content
POST
/
campaigns
/
{campaignId}
/
duplicate
Duplicate Campaign
curl --request POST \
  --url https://api.lemlist.com/api/campaigns/{campaignId}/duplicate \
  --header 'Authorization: Basic <encoded-value>' \
  --header 'Content-Type: application/json' \
  --data '
{
  "name": "My duplicated campaign"
}
'
{
  "_id": "cam_X1Y2Z3A4B5C6D7E8F9",
  "name": "My duplicated campaign",
  "sequenceId": "seq_A1B2C3D4E5F6G7H8I9",
  "labels": [],
  "createdAt": "2024-01-15T10:30:00.000Z",
  "createdBy": "usr_A1B2C3D4E5F6G7H8I9",
  "status": "draft",
  "senders": []
}
Creates a full copy of the campaign including its sequence steps, schedules, and AI variable templates. CRM settings are not duplicated. The duplicated campaign is created in draft state with all lead counts reset to zero. You can optionally provide a custom name in the request body. If omitted, the duplicated campaign will be named "{original name} Copy".

Authorizations

Authorization
string
header
required

Basic authentication header of the form Basic <encoded-value>, where <encoded-value> is the base64-encoded string username:password.

Path Parameters

campaignId
string
required

The unique identifier of the campaign to duplicate

Body

application/json
name
string

Custom name for the duplicated campaign. If not provided, the original name with ' Copy' suffix is used.

Response

Success

_id
string
name
string
sequenceId
string
archived
boolean
labels
string[]
createdAt
string<date-time>
createdBy
string
status
string
senders
any[]
hasError
boolean
errors
string[]