Utwórz Agent Enrollment
Utwórz jednorazowe podłączenie agenta, które można bezpiecznie ponowić przed pierwszym podłączeniem klienta lub po nim.
POST
/partner-api/v1/accounts/{relationshipId}/agent-enrollmentsWersja API: v1operationId: createPartnerAgentEnrollmentOtwórz w MarkdownDziałanie metody
Utwórz jednorazowe podłączenie agenta, które można bezpiecznie ponowić przed pierwszym podłączeniem klienta lub po nim.
Uwierzytelnianie
Przekaż jednorazowe potwierdzenie JWT Developer Application podpisane algorytmem RS256 w Authorization: Bearer <application_assertion>. Nie jest to token dostępu do Public API.
Żądanie
Podstawowy adres API: https://public-api.cloudprint.me/partner-api/v1/accounts/{relationshipId}/agent-enrollments
Parametry
| Nazwa | Położenie | Typ | Wymagane | Opis | Ograniczenia |
|---|---|---|---|---|---|
relationshipId | path | string (uuid) | tak | Stabilny UUID relacji partnera z zarządzanym klientem. | — |
Idempotency-Key | header | string | tak | Stabilny klucz operacji: przy ponowieniu CloudPrint zwróci pierwotny wynik zamiast tworzyć duplikat. | minLength: 1; maxLength: 200 |
X-Request-Id | header | string | nie | Opcjonalny identyfikator do śledzenia żądania; CloudPrint zwróci bezpieczną wartość w nagłówku odpowiedzi. | maxLength: 128; example: "order-100045-attempt-1" |
Treść żądania
Typ zawartości: application/json
| Nazwa | Typ | Wymagane | Opis | Ograniczenia |
|---|---|---|---|---|
name | string | nie | Czytelna nazwa zasobu widoczna dla operatorów konta. | minLength: 1; maxLength: 255; example: "Warehouse workstation 2" |
agent_onboarding | object | tak | Jednorazowe dane podłączenia Agent utworzone dla zarządzanego klienta. | — |
replaces_enrollment_id | string | null (uuid) | nie | UUID wcześniejszego Agent Enrollment zastępowanego przez ten Enrollment. | — |
Przykładowe żądania
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"
}
}'Odpowiedź
Status HTTP: 201 — Zasób został utworzony.
Pola odpowiedzi
| Nazwa | Typ | Wymagane | Opis | Ograniczenia |
|---|---|---|---|---|
agent_enrollment_id | string (uuid) | tak | Stabilny identyfikator Agent Enrollment. | — |
expires_at | string (date-time) | tak | Znacznik czasu CloudPrint w formacie ISO 8601. | — |
agent_onboarding_url | string (uri) | tak | Główny jednorazowy link do podłączenia agenta. Otwórz go w całości, nie zmieniaj i nie zapisuj w logach. | example: "https://connect.cloudprint.me/setup#token=cpat_example" |
status | string | tak | Bieżący stan zasobu lub procesu; użyj wartości dozwolonych dla danej metody. | enum: pending |
Przykładowa odpowiedź
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"
}Błędy
| Status HTTP | Opis |
|---|---|
401 | Brak uwierzytelnienia albo jest ono nieprawidłowe. |
403 | Brak uprawnień wymaganych do tej operacji. |
404 | Nie znaleziono żądanego zasobu. |
409 | Żądanie jest sprzeczne z bieżącym stanem zasobu. |
422 | Pola żądania nie przeszły walidacji. |
429 | Przekroczono limit żądań; zastosuj Retry-After. |
500 | Wewnętrzny błąd CloudPrint. |
Powiązana dokumentacja
Pobierz listę Agent EnrollmentPobierz Agent Enrollment o statusach `pending`, `claimed`, `expired` i `revoked` bez poufnych kodów.Pobierz Agent EnrollmentSprawdź konkretne jednorazowe podłączenie klienta i pobierz identyfikator podłączonego agenta.Idempotentne tworzenie zadańZapobiegaj podwójnemu drukowi podczas ponawiania żądań po przekroczeniu limitu czasu lub błędzie sieci.