Skip to main content
POST
/
v1
/
campaigns
/
{campaignId}
/
leads
Add Leads to Campaign
curl --request POST \
  --url https://app-api.walead.ai/api/v1/campaigns/{campaignId}/leads \
  --header 'Content-Type: application/json' \
  --header 'x-api-key: <api-key>' \
  --data '
{
  "leads": [
    {
      "publicIdentifier": "<string>",
      "linkedinUrl": "<string>",
      "firstName": "<string>",
      "lastName": "<string>",
      "name": "<string>",
      "email": "<string>",
      "phone": "<string>",
      "companyName": "<string>",
      "headline": "<string>",
      "website": "<string>",
      "summary": "<string>",
      "profilePictureUrl": "<string>",
      "customVariables": {}
    }
  ],
  "linkedinUrls": [
    "<string>"
  ],
  "checkDuplicatesAcrossWorkspace": true
}
'
{
  "success": true,
  "message": "<string>",
  "created": 123,
  "discarded": 123
}

Overview

Adds new leads to an existing campaign. You can add up to 1,000 leads per request using either lead objects or LinkedIn URLs.

Lead Deduplication

By default, the API checks for duplicate leads across your entire workspace. You can disable this by setting checkDuplicatesAcrossWorkspace to false.

Authorizations

x-api-key
string
header
required

API key for authentication. Generate from your WaLead dashboard.

Path Parameters

campaignId
string
required

Campaign ID

Body

application/json

Leads to add to the campaign

leads
object[]

Array of lead objects (max 1000)

linkedinUrls
string[]

Array of LinkedIn URLs to convert to leads (max 1000 combined with leads)

checkDuplicatesAcrossWorkspace
boolean

Check for duplicates across all campaigns in workspace (default: true)

Response

Leads added successfully

success
boolean

Whether the operation was successful

message
string

Response message

created
integer

Number of leads created

discarded
integer

Number of leads discarded (duplicates or blocked)