Przejdź do treści

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 Markdown

Dział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

NazwaPołożenieTypWymaganeOpisOgraniczenia
relationshipIdpathstring (uuid)takPole kontraktu API; uwzględnij podany typ i ograniczenia.
Idempotency-KeyheaderstringtakPole kontraktu API; uwzględnij podany typ i ograniczenia.minLength: 1; maxLength: 200

Treść żądania

Typ zawartości: application/json

NazwaTypWymaganeOpisOgraniczenia
namestringniePole kontraktu API; uwzględnij podany typ i ograniczenia.minLength: 1; maxLength: 255; example: "Warehouse workstation 2"
agent_onboardingobjecttakPole kontraktu API; uwzględnij podany typ i ograniczenia.
replaces_enrollment_idstring | null (uuid)nieStabilny 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

NazwaTypWymaganeOpisOgraniczenia
agent_enrollment_idstring (uuid)takStabilny identyfikator tego zasobu.
expires_atstring (date-time)takZnacznik czasu CloudPrint w formacie ISO 8601.
agent_onboarding_urlstring (uri)takPole kontraktu API; uwzględnij podany typ i ograniczenia.example: "https://connect.cloudprint.me/setup#token=cpat_example"
statusstringtakBieżą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 HTTPOpis
401Brak uwierzytelnienia albo jest ono nieprawidłowe.
403Brak uprawnień wymaganych do tej operacji.
404Nie znaleziono żądanego zasobu.
409Żądanie jest sprzeczne z bieżącym stanem zasobu.
422Pola żądania nie przeszły walidacji.
429Przekroczono limit żądań; zastosuj Retry-After.
500Wewnętrzny błąd CloudPrint.

Wskazówki integracyjne

Powiązana dokumentacja

Przewodniki dotyczące integracji CloudPrint, podłączania lokalnego agenta i obsługi procesów drukowania.