---
title: "Enroll people into a campaign"
locale: en
url: https://tlg.builera.app/en/docs/reference/rest/enrollments.create
verified: 2026-10-24
app_version: "2.0"
generated: true
---

# Enroll people into a campaign

Enroll up to 5000 CRM people into a campaign (enroll_campaign). Same rules as campaigns.add_people, which stays an alias: people already in another campaign, opted out or without a reachable account are skipped with a reason; it never starts a paused or draft campaign.

Enroll up to 5000 CRM people into a campaign (enroll_campaign). Same rules as campaigns.add_people, which stays an alias: people already in another campaign, opted out or without a reachable account are skipped with a reason; it never starts a paused or draft campaign.

## Overview

| Name | Value |
| --- | --- |
| Code | `enrollments.create` |
| Scope needed | `campaigns.write` |
| Risk | Write |
| May need confirmation | No |
| Runs as | Answers right away |
| Needs `Idempotency-Key` | No |
| Member roles allowed | `owner`, `manager` |
| In the app | Campaigns → Recipients → Add |

## Input fields

| Field | Type | Required | Description |
| --- | --- | --- | --- |
| `campaignId` | `uuid` | Yes |   |
| `personIds` | `uuid[]` | Yes |   |

## Example request

```bash
curl -X POST https://tlg.builera.app/api/public/v2/ops/enrollments.create \
  -H "Authorization: Bearer $TELEGRAM_AUTO_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"campaignId":"00000000-0000-0000-0000-000000000000","personIds":[]}'
```

## Output fields (`data`)

| Field | Type | Required |
| --- | --- | --- |
| `draft` | `true/false` | Yes |
| `added` | `number` | Yes |
| `excluded` | `number` | Yes |
| `ok` | `true` | Yes |

## Example answer

```json
{
  "data": {
    "draft": true,
    "added": 1,
    "excluded": 1,
    "ok": true
  }
}
```

## Using it over MCP

Tool `enrollments_create` is listed on the profiles: Real-time operations (`realtime`), Automation setup (`setup`), Discover (`prospecting`), Reports (`reports`), Administration (`admin`), Full (`full`). On other profiles, find it with `tools_search` and run it with `tools_run`.
