---
title: "Połączenie agenta i wybór drukarki"
description: "Zainstaluj agenta CloudPrint, wykryj lokalne kolejki i zapisz stabilny printer_id zgodny z możliwościami drukarki."
---
<nav class="docs-breadcrumb" aria-label="Breadcrumb"><a href="/pl/docs/">Dokumentacja CloudPrint</a><span aria-hidden="true">/</span><span>Print API</span></nav>

# Połączenie agenta i wybór drukarki

<p class="docs-lead">Agent zgłasza kolejki systemowe przez połączenie wychodzące. Integracja odczytuje ich stan z Public API, zapisuje `printer_id` CloudPrint i sprawdza możliwości przed wydrukiem.</p>

## Sprawdź agenta

```bash
curl -sS 'https://public-api.cloudprint.me/api/v1/agents?limit=50' \
  -H "Authorization: Bearer $ACCESS_TOKEN"
```

```json
{
  "agents": [
    {
      "agent_id": "22222222-2222-4222-8222-222222222222",
      "name": "Warehouse PC agent",
      "status": "online",
      "hostname": "warehouse-pc",
      "version": "0.1.1",
      "update": {
        "status": "up_to_date",
        "current_version": "0.1.1",
        "latest_version": "0.1.1",
        "minimum_supported_version": "0.1.0",
        "channel": "stable",
        "required": false
      },
      "last_seen_at": "2026-06-08T10:10:00+00:00"
    }
  ],
  "next_cursor": null
}
```

Lista wymaga `agents:read`. Agent powinien być `online`; w diagnostyce sprawdzaj `update.required` i wersje.

## Pobierz drukarki

```bash
curl -sS 'https://public-api.cloudprint.me/api/v1/printers?limit=100' \
  -H "Authorization: Bearer $ACCESS_TOKEN"
```

Skrócona odpowiedź z polami wyboru:

```json
{
  "printers": [
    {
      "printer_id": "11111111-1111-4111-8111-111111111111",
      "agent_id": "22222222-2222-4222-8222-222222222222",
      "name": "Warehouse Label Printer",
      "status": "online",
      "agent_name": "Warehouse PC agent",
      "agent_status": "online",
      "capabilities": {
        "backend": "windows_native",
        "language_profiles": [
          {
            "language": "zpl",
            "version": "zpl2"
          }
        ],
        "supports_custom_media": true,
        "supports_orientation": true,
        "supports_copies": true,
        "supported_dpi": [
          203
        ]
      },
      "endpoint": {
        "system_print_available": true,
        "raw_passthrough_available": true,
        "os": "windows",
        "driver_name": "ZDesigner ZD421-203dpi ZPL",
        "connection_type": "windows_spooler"
      }
    }
  ],
  "next_cursor": null
}
```

## Zapisz właściwy identyfikator

Zapisz `printer_id` dla lokalizacji lub procesu. Pokaż administratorowi `name`, `agent_name` i status, ale nie wybieraj drukarki według nazwy. Po odtworzeniu kolejki wymagaj ponownego przypisania i testu.

## Możliwości drukarki jako kontrakt

RAW wymaga zgodnego `language_profiles[*].language` i `raw_passthrough_available=true`. PDF wymaga druku systemowego lub mechanizmu renderowania. Przed użyciem niestandardowych opcji koloru, druku dwustronnego, orientacji, liczby kopii, nośnika, skali, przesunięcia i DPI sprawdzaj możliwości drukarki.

## Paginacja i niedostępne drukarki

Obie listy zwracają `next_cursor`. Używaj `?limit=100&cursor=VALUE`, aż otrzymasz `null`. Nie wysyłaj automatycznie zadań do niedostępnej drukarki i nie wybieraj po cichu drukarki z innej lokalizacji.

## Znaczenie danych połączenia

Pola sterownika, portu, systemu operacyjnego i typu połączenia opisują lokalną kolejkę i służą do diagnostyki. Nie jest to adres wywoływany przez serwer. Dane dostępowe w URI są ukrywane.

## Lista kontrolna przed wdrożeniem

- Korzystaj z wychodzącego połączenia agenta; nie wystawiaj portów drukarki do internetu.
- Zapisuj stabilny identyfikator drukarki, a nie tylko jej nazwę.
- Sprawdzaj format dokumentu, rozmiar strony i orientację przed utworzeniem zadania.
- Jawnie obsługuj status końcowy, ponowienia i ochronę przed podwójnym drukiem.

## Następne kroki

<div class="docs-card-grid"><a class="docs-card" href="/pl/docs/api/authentication/"><strong>Uwierzytelnianie OAuth2 Client Credentials</strong><span>Utwórz aplikację API CloudPrint, pobieraj krótkotrwały token i chroń dane dostępowe, nadając tylko niezbędne uprawnienia.</span></a>
<a class="docs-card" href="/pl/docs/api/documents/"><strong>Przesyłanie dokumentów PDF i RAW</strong><span>Wybierz multipart, publiczny adres HTTPS lub Base64 i przygotuj plik PDF albo dane RAW języka drukarki.</span></a>
<a class="docs-card" href="/pl/docs/troubleshooting/"><strong>Diagnostyka agentów, drukarek i zadań</strong><span>Znajdź przyczynę problemu na podstawie identyfikatora żądania, statusu zadania, połączenia agenta, możliwości drukarki i kodu API.</span></a></div>

<nav class="docs-resource-links" aria-label="Następne kroki"><a href="/pl/docs/api/v1/explorer/">OpenAPI</a><a href="https://my.cloudprint.me">Otwórz panel</a><a href="/docs/legal/privacy/">Polityka prywatności</a><a href="/pl/docs/legal/terms/">Regulamin</a><a href="/pl/docs/legal/payments-and-refunds/">Płatności i zwroty</a><a href="/pl/docs/legal/data-processing/">DPA</a></nav>