Add customers to a campaign
Requires campaign_enrollment.manage. Provide customer or customers (up to 1,000), identified by customerId or US phoneNumber. Returns HTTP 202 with a server-generated job ID for both individuals and lists. Invalid customer entries fail individually with invalid_customer_reference and validationErrors; valid entries continue. Invalid request structure still returns 422. Poll statusUrl for per-input results. An optional idempotencyKey protects retries of the same payload; without one, each submission creates a new request. Customers must already exist in your organization. See Campaign API guide for restrictions and retries. Existing active or terminal enrollments are not restarted. Retention journey conflicts are reported per customer.
Authorization
x-api-key API key required for authentication.
Keys begin with 'cc_' prefix. Get your API key from the Developer Dashboard.
In: header
Path Parameters
POST /v2/campaigns/:campaignId/enrollment Parameter
Request Body
application/json
POST /v2/campaigns/:campaignId/enrollment Request body
TypeScript Definitions
Use the request body type in TypeScript.
Optional retry key. Reuse with the identical payload after a timeout. Without a key, each submission creates a new request.
Response Body
application/json
application/json
application/json
application/json
application/json
application/json
application/json
application/json
application/json
application/json
application/json
curl -X POST "https://api.carecycle.ai/v2/campaigns/497f6eca-6276-4993-bfeb-53cbbbba6f08/enrollment" \ -H "Content-Type: application/json" \ -d '{}'{
"jobId": "9d222c6d-893e-4e79-8201-3c9ca16a0f39",
"statusUrl": "string",
"total": -9007199254740991,
"resolvedCount": -9007199254740991
}{
"message": "string",
"code": "string"
}{
"message": "string",
"code": "string"
}{
"message": "string",
"code": "string"
}{
"message": "string",
"code": "string"
}{
"message": "string",
"code": "string"
}{
"message": "string",
"code": "VALIDATION_ERROR",
"errors": [
{
"path": [
"string"
],
"message": "string",
"expected": "string",
"received": "string",
"code": "string"
}
],
"failedRecords": [
{
"index": 0,
"phoneNumber": "string",
"firstName": "string",
"lastName": "string",
"externalId": "string"
}
]
}{
"message": "string",
"code": "string",
"retryAfter": 0
}{
"message": "string",
"code": "string"
}{
"message": "string",
"code": "string"
}{
"message": "string",
"code": "string"
}