Перейти к содержанию

Developer Platform CloudPrint

Developer Platform подходит продуктам, которые подключаются к существующим аккаунтам CloudPrint разных клиентов. Клиент один раз устанавливает ваше приложение, а затем ваш сервер получает короткоживущие токены для этой установки без повторного согласия перед каждой печатью.

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

Обычные API Credentials подходят, если сервер печатает только в аккаунте вашей компании. Developer Platform нужна SaaS, ERP, WMS и другим продуктам, которые обслуживают независимых клиентов с собственными аккаунтами CloudPrint. Если ваш продукт сам создаёт аккаунты CloudPrint для клиентов, используйте 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.

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

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

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

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

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

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

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

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

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

Руководства по интеграции CloudPrint, подключению локального агента и надёжной работе печати.