---
title: "Как CloudPrint печатает на локальных принтерах"
description: "Разберитесь, как серверная часть вашей системы, Public API CloudPrint и локальный агент доставляют документы на принтеры в закрытой сети."
---
<nav class="docs-breadcrumb" aria-label="Breadcrumb"><a href="/docs/">Документация CloudPrint</a><span aria-hidden="true">/</span><span>Начало работы</span></nav>

# Как CloudPrint печатает на локальных принтерах

<p class="docs-lead">CloudPrint связывает приложение в облаке с принтером в офисе, магазине или на складе. Приложение обращается только к Public API, а локальный агент получает разрешённые задания через исходящее соединение.</p>

## Как проходит задание

Сервер вашей системы получает токен, выбирает `printer_id`, передаёт документ и создаёт задание. CloudPrint хранит документ и состояние задания. Локальный агент сообщает о доступных принтерах, забирает задание и передаёт его в системную очередь или совместимый RAW-канал.

## Зачем нужен локальный агент

Принтеры обычно находятся в частной сети и не должны быть доступны из интернета. Агент сам подключается к CloudPrint, поэтому не нужны входящие правила межсетевого экрана, VPN или удалённый рабочий стол.

## Статусы задания

Новое задание получает статус `pending`, затем может перейти в `reserved` и `printing`. Итоговые статусы — `printed`, `failed` и `cancelled`. `printed` подтверждает принятие документа системной очередью, но не подтверждает физическую печать. Сохраняйте `print_job_id`, считайте новые неизвестные значения промежуточными и показывайте оператору понятное состояние.

## Безопасные повторы

Тайм-аут сетевого запроса не должен приводить ко второй физической печати. Формируйте стабильный `Idempotency-Key` для каждой бизнес-операции. Тот же ключ и те же данные возвращают исходное задание; изменённые данные с тем же ключом приводят к ответу `409 Conflict`.

## За что отвечает ваша система

CloudPrint передаёт задание на выбранный принтер и сообщает результат, который смог подтвердить агент. Ваша система отвечает за выбор принтера, подготовку файла, связь задания с заказом или другим документом и правила повторной печати после ошибки.

## Следующие шаги

<div class="docs-card-grid"><a class="docs-card" href="/docs/getting-started/"><strong>Быстрый старт с CloudPrint API</strong><span>Подключите агент, получите OAuth-токен, выберите принтер, отправьте первое задание и дождитесь конечного статуса.</span></a>
<a class="docs-card" href="/docs/api/overview/"><strong>Обзор CloudPrint Public API</strong><span>Карта авторизации, принтеров, документов, заданий, статусов и ошибок CloudPrint для серверной интеграции.</span></a>
<a class="docs-card" href="/docs/api/agents-and-printers/"><strong>Local Printer API для веб-приложений и SaaS</strong><span>Подключите сервер веб-приложения к локальным принтерам через CloudPrint Agent, получите очереди через API и маршрутизируйте по стабильному printer_id.</span></a></div>

<nav class="docs-resource-links" aria-label="Следующие шаги"><a href="https://cloudprint.by/status/">Статус сервиса</a><a href="/docs/api/v1/explorer/">OpenAPI</a><a href="https://developer.cloudprint.me">Кабинет разработчика</a><a href="https://my.cloudprint.by">Открыть кабинет</a><a href="/docs/legal/privacy/">Политика конфиденциальности</a><a href="/docs/legal/terms/">Условия использования</a><a href="/docs/legal/data-processing/">DPA</a><a href="/docs/legal/service-level-agreement/">Соглашение об уровне сервиса</a></nav>