Utwórz Agent Enrollment
Wydaj idempotentny jednorazowy Enrollment przed lub po onboardingu klienta.
POST
/partner-api/v1/accounts/{relationshipId}/agent-enrollmentsWersja API: v1operationId: createPartnerAgentEnrollmentOtwórz w MarkdownDziałanie metody
Wydaj idempotentny jednorazowy Enrollment przed lub po onboardingu klienta.
Uwierzytelnianie
Przekaż jednorazowy assertion RS256 Developer Application 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 | Pole kontraktu API; uwzględnij podany typ i ograniczenia. | — |
Idempotency-Key | header | string | tak | Pole kontraktu API; uwzględnij podany typ i ograniczenia. | minLength: 1; maxLength: 200 |
Treść żądania
Typ zawartości: application/json
| Nazwa | Typ | Wymagane | Opis | Ograniczenia |
|---|---|---|---|---|
name | string | nie | Pole kontraktu API; uwzględnij podany typ i ograniczenia. | minLength: 1; maxLength: 255; example: "Warehouse workstation 2" |
agent_onboarding | object | tak | Pole kontraktu API; uwzględnij podany typ i ograniczenia. | — |
replaces_enrollment_id | string | null (uuid) | nie | Stabilny identyfikator tego zasobu. | — |
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 tego zasobu. | — |
expires_at | string (date-time) | tak | Znacznik czasu CloudPrint w formacie ISO 8601. | — |
agent_onboarding_url | string (uri) | tak | Pole kontraktu API; uwzględnij podany typ i ograniczenia. | 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. |
Wskazówki integracyjne
Powiązana dokumentacja
Pobierz Agent EnrollmentsPobierz pending, claimed, expired i revoked Agent Enrollments bez tajnych kodów.Pobierz jedno Agent EnrollmentSprawdź konkretną jednorazową rejestrację zarządzanego klienta i powiąż ją z podłączonym Agentem.Idempotentne tworzenie zadańZapobiegaj podwójnemu drukowi podczas ponawiania żądań po przekroczeniu limitu czasu lub błędzie sieci.