careCycle
Campaign Enrollment

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.

POST
/v2/campaigns/{campaignId}/enrollment

Authorization

x-api-key
x-api-key<token>

API key required for authentication.

Keys begin with 'cc_' prefix. Get your API key from the Developer Dashboard.

In: header

Path Parameters

string

POST /v2/campaigns/:campaignId/enrollment Parameter

Match^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$Formatuuid

Request Body

application/json

POST /v2/campaigns/:campaignId/enrollment Request body

TypeScript Definitions

Use the request body type in TypeScript.

string

Optional retry key. Reuse with the identical payload after a timeout. Without a key, each submission creates a new request.

Match^[A-Za-z0-9._:-]+$Length1 <= length <= 128
object | object | string | number | boolean | null | array<string | number | boolean | null | recursive | object> | object
array<object | object | string | number | boolean | null | array<string | number | boolean | null | recursive | object> | object>
Items1 <= items <= 1000

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"
}