Campaigns

Enroll leads

Enrolls leads that already exist, by id — create them first with POST /leads or POST /leads/bulk. A lead is skipped rather than enrolled when it has no handle for a channel the campaign sends on (missing_identity), is already live in another campaign (enrolled_elsewhere), is suppressed, or the id does not name a lead in this organization (lead_not_found). Results come back in request order.

POST

/api/v1/campaigns/{campaignId}/leads

Path parameters

campaignId

required

string · uuid

Campaign id

Request bodyrequired

leadIdsrequired

string · uuid[]

Leads to enroll, by id. Create them first with POST /api/v1/leads or POST /api/v1/leads/bulk.

Response

201One result per submitted lead id, in request order.

results

object[]

requestId

string · uuid

Id of this request, for support and troubleshooting

Errors

  • 400: Bad request
  • 401: Unauthorized: missing or invalid API key
  • 403: Forbidden
  • 404: Not found
  • 422: Invalid request payload

Search docs

Search documentation, API reference, and MCP tools

We use cookies to enhance your experience on Needle and keep your data secure. Privacy Policy