Developer Platform CloudPrint
Developer Platform подходит продуктам, которые печатают для независимых клиентов. Каждому клиенту соответствует App Installation: владелец существующего аккаунта может подтвердить доступ сам, а ваш продукт — создать управляемый аккаунт.
Выберите модель подключения
Обычные API Credentials подходят, если сервер печатает только в аккаунте вашей компании. Если независимый клиент уже владеет аккаунтом CloudPrint, подключите его через App Installation с подтверждением доступа. Если аккаунт для клиента создаёт ваш продукт, используйте сценарий с управляемыми аккаунтами.
Где проходит коммерческая граница
Печать через API Credentials собственного аккаунта CloudPrint бесплатна. Developer Platform — коммерческий продукт, потому что позволяет приложению подключать аккаунты независимых клиентов. Доступ в production, поддержку и условия использования компания согласует с CloudPrint в письменном договоре.
Кому принадлежат приложение и аккаунт
Developer Application принадлежит вашему Developer Account. В каждом клиентском аккаунте CloudPrint у приложения может быть одна App Installation. Клиент остаётся владельцем своего аккаунта и сам подтверждает разрешения. Для связи с клиентом используйте идентификатор из своей системы, а не CloudPrint account_id.
Как проходит подключение
Создайте Developer Account, зарегистрируйте Application, добавьте открытый ключ RS256 и отправьте клиенту ссылку на установку. После возврата пользователя проверьте state, сохраните installation_id рядом с идентификатором клиента, подпишите одноразовое JWT-подтверждение приложения и обменяйте его на Installation Access Token. Этот токен используется для вызовов Print API.
Не смешивайте данные доступа
Закрытый ключ подтверждает Developer Application, но сам по себе не даёт доступ к /api/v1/*. Installation Access Token разрешает работу только с одним аккаунтом CloudPrint и только в пределах одобренных разрешений. Создавайте новое JWT-подтверждение для каждого обмена, кешируйте полученный токен почти до истечения срока и не записывайте ключи или токены в логи.
Какие идентификаторы хранить
Сохраняйте идентификатор клиента из своей системы, application_id, installation_id, CloudPrint account_id, одобренные разрешения и статус установки. Постоянная связь с клиентским аккаунтом — installation_id; access token действует недолго. Выпуск нового токена не создаёт установку заново и не требует повторного согласия.
Приостановка и отзыв доступа
Различайте статусы suspended и revoked. Приостановленную установку можно возобновить, а отозванную — нельзя: при новом подключении будет создан другой installation_id. Уменьшение разрешений действует сразу, а расширить их без нового согласия владельца аккаунта невозможно.