---
title: "Developer Platform CloudPrint"
description: "Создайте одно приложение, которое клиенты устанавливают в собственные аккаунты CloudPrint через стабильные App Installations."
---
<nav class="docs-breadcrumb" aria-label="Breadcrumb"><a href="/docs/">Документация CloudPrint</a><span aria-hidden="true">/</span><span>Developer Platform</span></nav>

# Developer Platform CloudPrint

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

## Когда выбирать эту модель

Обычные [API Credentials](../api/authentication/) подходят, если сервер печатает только в аккаунте вашей компании. Developer Platform нужна SaaS, ERP, WMS и другим продуктам, которые обслуживают независимых клиентов с собственными аккаунтами CloudPrint. Если ваш продукт сам создаёт аккаунты CloudPrint для клиентов, используйте [Partner Platform](../partner-platform/).

## Кому принадлежат приложение и аккаунт

Developer Application принадлежит вашему Developer Account. В каждом клиентском аккаунте CloudPrint у приложения может быть одна App Installation. Клиент остаётся владельцем своего аккаунта и сам подтверждает разрешения. Для связи с клиентом используйте идентификатор из своей системы, а не CloudPrint `account_id`.

## Как проходит подключение

Создайте Developer Account, зарегистрируйте Application, добавьте открытый ключ RS256 и отправьте клиенту ссылку на установку. После возврата пользователя проверьте `state`, сохраните `installation_id` рядом с идентификатором клиента, подпишите одноразовый JWT assertion приложения и обменяйте его на Installation Access Token. Этот токен используется для вызовов [Print API](../api/overview/).

## Не смешивайте данные доступа

Закрытый ключ подтверждает Developer Application, но сам по себе не даёт доступ к `/api/v1/*`. Installation Access Token разрешает работу только с одним аккаунтом CloudPrint и только в пределах одобренных разрешений. Создавайте новый assertion для каждого обмена, кешируйте полученный токен почти до истечения срока и не записывайте ключи или токены в логи.

## Какие идентификаторы хранить

Сохраняйте идентификатор клиента из своей системы, `application_id`, `installation_id`, CloudPrint `account_id`, одобренные разрешения и статус установки. Постоянная связь с клиентским аккаунтом — `installation_id`; access token действует недолго. Выпуск нового токена не создаёт установку заново и не требует повторного согласия.

## Приостановка и отзыв доступа

Различайте статусы `suspended` и `revoked`. Приостановленную установку можно возобновить, а отозванную — нельзя: при новом подключении будет создан другой `installation_id`. Уменьшение разрешений действует сразу, а расширить их без нового согласия владельца аккаунта невозможно.

## Чек-лист перед запуском

- Используйте исходящее подключение агента и не открывайте порты принтера в интернет.
- Сохраняйте стабильный идентификатор принтера, а не только отображаемое имя.
- Проверяйте формат документа, размер страницы и ориентацию до создания задания.
- Явно задайте обработку конечных статусов, повторов и защиту от двойной печати.

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

<div class="docs-card-grid"><a class="docs-card" href="/docs/developer-platform/applications/"><strong>Создание и авторизация приложения</strong><span>Создайте Developer Account и Developer Application, зарегистрируйте ключи RS256 и авторизуйте сервер приложения.</span></a>
<a class="docs-card" href="/docs/developer-platform/installations/"><strong>Установки и токены доступа</strong><span>Устанавливайте приложение в аккаунты клиентов, сохраняйте installation_id и выпускайте короткоживущие Installation Access Tokens.</span></a>
<a class="docs-card" href="/docs/partner-platform/"><strong>Partner Platform CloudPrint</strong><span>Создавайте и обслуживайте изолированные аккаунты клиентов CloudPrint из embedded- или white-label-продукта.</span></a></div>

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