Przejdź do treści

Utwórz zarządzane konto klienta ​

Utwórz odizolowane konto CloudPrint, App Installation i jednorazową rejestrację agenta bez rejestracji klienta.

POST/partner-api/v1/accountsWersja API: v1operationId: createPartnerManagedAccountOtwórz w Markdown

Działanie metody ​

Utwórz odizolowane konto CloudPrint, App Installation i jednorazową rejestrację agenta bez rejestracji klienta.

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

Parametry ​

NazwaPołożenieTypWymaganeOpisOgraniczenia
Idempotency-KeyheaderstringtakStabilny klucz operacji: przy ponowieniu CloudPrint zwróci pierwotny wynik zamiast tworzyć duplikat.minLength: 1; maxLength: 200
X-Request-IdheaderstringnieOpcjonalny 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

NazwaTypWymaganeOpisOgraniczenia
external_customer_idstringtakStały identyfikator klienta w systemie integratora. Musi być unikalny w obrębie uwierzytelnionej Developer Application.minLength: 1; maxLength: 160; example: "customer-42"
namestringtakCzytelna nazwa zasobu widoczna dla operatorów konta.minLength: 1; maxLength: 120; example: "Acme Store 42"
permissionsarraynieUprawnienia instalacji zawarte w tym tokenie.—
agent_onboardingobjecttakJednorazowe dane podłączenia Agent utworzone dla zarządzanego klienta.—

Przykładowe żądania ​

cURL ​

bash
curl -sS https://public-api.cloudprint.me/partner-api/v1/accounts \
  -H "Authorization: Bearer $APPLICATION_ASSERTION" \
  -H 'Idempotency-Key: customer-42-provision-v1' \
  -H 'Content-Type: application/json' \
  -d '{
    "external_customer_id": "customer-42",
    "name": "Acme Store 42",
    "permissions": ["printers:read", "documents:write", "print_jobs:write", "print_jobs:read"],
    "agent_onboarding": {
      "return_uri": "https://app.integrator.example/cloudprint/callback",
      "state": "single-use-random-state"
    }
  }'

Odpowiedź ​

Status HTTP: 200 — Żądanie zostało wykonane.

Pola odpowiedzi ​

NazwaTypWymaganeOpisOgraniczenia
relationship_idstring (uuid)takStabilny UUID relacji partnera z zarządzanym klientem.—
developer_account_idstring (uuid)takStabilny UUID konta dewelopera, do którego należy relacja z klientem.—
cloudprint_account_idstring (uuid)takStabilny UUID konta CloudPrint utworzonego dla zarządzanego klienta.—
external_customer_idstringtakStały identyfikator klienta w systemie integratora. Musi być unikalny w obrębie uwierzytelnionej Developer Application.maxLength: 160
namestringtakCzytelna nazwa zasobu widoczna dla operatorów konta.maxLength: 120
application_idstring (uuid)takStabilny identyfikator Developer Application reprezentowanej przez token instalacji.—
installation_idstring | null (uuid)takStabilny UUID App Installation, która autoryzowała token.—
agent_enrollment_idstring | null (uuid)takStabilny identyfikator Agent Enrollment.—
agent_onboarding_expires_atstring | null (date-time)takZnacznik czasu CloudPrint w formacie ISO 8601.—
agent_onboarding_urlstring | null (uri)takGłó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"
onboarding_statusstringtakBieżący stan gotowości konfiguracji CloudPrint zarządzanego klienta.enum: provisioning, waiting_for_agent, ready, failed
statusstringtakBieżący stan zasobu lub procesu; użyj wartości dozwolonych dla danej metody.enum: provisioning, active, suspended, closed
created_atstring (date-time)takZnacznik czasu CloudPrint w formacie ISO 8601.—
updated_atstring (date-time)takZnacznik czasu CloudPrint w formacie ISO 8601.—

Przykładowa odpowiedź ​

json
{
  "relationship_id": "11111111-1111-4111-8111-111111111111",
  "developer_account_id": "11111111-1111-4111-8111-111111111111",
  "cloudprint_account_id": "11111111-1111-4111-8111-111111111111",
  "external_customer_id": "string",
  "name": "string",
  "application_id": "11111111-1111-4111-8111-111111111111",
  "installation_id": "11111111-1111-4111-8111-111111111111",
  "agent_enrollment_id": "11111111-1111-4111-8111-111111111111",
  "agent_onboarding_expires_at": "2026-08-06T12:00:00Z",
  "agent_onboarding_url": "https://connect.cloudprint.me/setup#token=cpat_example",
  "onboarding_status": "provisioning",
  "status": "provisioning",
  "created_at": "2026-08-06T12:00:00Z",
  "updated_at": "2026-08-06T12:00:00Z"
}

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.

Powiązana dokumentacja ​

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