---
title: "Создать Agent Enrollment"
description: "Создайте одноразовое подключение агента, которое можно безопасно повторить до или после первоначального подключения клиента."
---
<nav class="docs-breadcrumb" aria-label="Breadcrumb"><a href="/docs/">Документация CloudPrint</a><span aria-hidden="true">/</span><span>Справочник API</span></nav>

# Создать Agent Enrollment

<p class="docs-lead">Создайте одноразовое подключение агента, которое можно безопасно повторить до или после первоначального подключения клиента.</p>

<div class="api-endpoint-summary"><span class="api-method api-method-post">POST</span><code>/partner-api/v1/accounts/{relationshipId}/agent-enrollments</code><span><strong>Версия API:</strong> v1</span><span><strong>operationId:</strong> <code>createPartnerAgentEnrollment</code></span><a href="/docs/api/v1/partner/agent-enrollments/create/index.md">Открыть в Markdown</a></div>

## Назначение метода

Создайте одноразовое подключение агента, которое можно безопасно повторить до или после первоначального подключения клиента.

## Авторизация

Передавайте одноразовое JWT-подтверждение Developer Application, подписанное RS256, в `Authorization: Bearer <application_assertion>`. Это не токен доступа к Public API.

## Запрос

**Основной адрес API:** `https://public-api.cloudprint.me/partner-api/v1/accounts/{relationshipId}/agent-enrollments`

### Параметры

| Имя | Расположение | Тип | Обязательно | Описание | Ограничения |
| --- | --- | --- | --- | --- | --- |
| `relationshipId` | path | `string (uuid)` | да | Поле контракта API; учитывайте указанные тип и ограничения. | — |
| `Idempotency-Key` | header | `string` | да | Поле контракта API; учитывайте указанные тип и ограничения. | minLength: 1; maxLength: 200 |

### Тело запроса

**Тип содержимого:** `application/json`

| Имя | Тип | Обязательно | Описание | Ограничения |
| --- | --- | --- | --- | --- |
| `name` | `string` | нет | Поле контракта API; учитывайте указанные тип и ограничения. | minLength: 1; maxLength: 255; example: `"Warehouse workstation 2"` |
| `agent_onboarding` | `object` | да | Поле контракта API; учитывайте указанные тип и ограничения. | — |
| `replaces_enrollment_id` | `string \| null (uuid)` | нет | Стабильный идентификатор этого ресурса. | — |

### Примеры запросов

#### cURL

```bash
curl -sS -X POST "https://public-api.cloudprint.me/partner-api/v1/accounts/$RELATIONSHIP_ID/agent-enrollments" \
  -H "Authorization: Bearer $APPLICATION_ASSERTION" \
  -H 'Idempotency-Key: customer-42-agent-2-v1' \
  -H 'Content-Type: application/json' \
  -d '{
    "name": "Warehouse workstation 2",
    "agent_onboarding": {
      "return_uri": "https://app.integrator.example/cloudprint/callback",
      "state": "new-single-use-random-state"
    }
  }'
```

## Ответ

**HTTP-статус:** `201` — Ресурс создан.

### Поля ответа

| Имя | Тип | Обязательно | Описание | Ограничения |
| --- | --- | --- | --- | --- |
| `agent_enrollment_id` | `string (uuid)` | да | Стабильный идентификатор Agent Enrollment. | — |
| `expires_at` | `string (date-time)` | да | Временная метка CloudPrint в формате ISO 8601. | — |
| `agent_onboarding_url` | `string (uri)` | да | Основная одноразовая ссылка для подключения агента. Открывайте её целиком, не изменяйте и не записывайте в логи. | example: `"https://connect.cloudprint.me/setup#token=cpat_example"` |
| `status` | `string` | да | Текущее состояние ресурса или процесса; учитывайте допустимые значения конкретного метода. | enum: `pending` |

### Пример ответа

```json
{
  "agent_enrollment_id": "11111111-1111-4111-8111-111111111111",
  "expires_at": "2026-08-06T12:00:00Z",
  "agent_onboarding_url": "https://connect.cloudprint.me/setup#token=cpat_example",
  "status": "pending"
}
```

## Ошибки

| HTTP-статус | Описание |
| --- | --- |
| `401` | Авторизация отсутствует или недействительна. |
| `403` | Для операции недостаточно разрешений. |
| `404` | Запрошенный ресурс не найден. |
| `409` | Запрос конфликтует с текущим состоянием ресурса. |
| `422` | Поля запроса не прошли проверку. |
| `429` | Превышен лимит запросов; учитывайте Retry-After. |
| `500` | Внутренняя ошибка CloudPrint. |

## Рекомендации по интеграции

## Связанная документация

<div class="docs-card-grid"><a class="docs-card" href="/docs/api/v1/partner/agent-enrollments/list/"><strong>Получить список Agent Enrollment</strong><span>Получите Agent Enrollment со статусами `pending`, `claimed`, `expired` и `revoked` без секретных кодов.</span></a>
<a class="docs-card" href="/docs/api/v1/partner/agent-enrollments/get/"><strong>Получить Agent Enrollment</strong><span>Проверьте конкретное одноразовое подключение клиента и получите идентификатор подключённого агента.</span></a>
<a class="docs-card" href="/docs/api/v1/idempotency/"><strong>Идемпотентное создание заданий</strong><span>Предотвращайте двойную печать при повторе запросов после превышения времени ожидания или сетевого сбоя.</span></a></div>

<nav class="docs-resource-links" aria-label="Следующие шаги"><a href="/docs/api/v1/explorer/">OpenAPI</a><a href="https://my.cloudprint.by">Открыть кабинет</a><a href="/docs/legal/privacy/">Политика конфиденциальности</a><a href="/docs/legal/terms/">Условия использования</a><a href="/docs/legal/payments-and-refunds/">Оплата и возврат</a><a href="/docs/legal/data-processing/">DPA</a></nav>