Shopify анонсировал понижение прав приложения с записи до чтения в API 2027-01
В API Shopify 2027-01 появится понижение необязательных write-прав до read. Чем оно отличается от отзыва доступа и как подготовить проверку приложения.
Содержание статьи
Shopify анонсировал для Admin GraphQL API 2027-01 возможность заменить необязательное право записи приложения соответствующим правом чтения. Это будущая версионная возможность, а не автоматическое урезание доступа всех установленных сервисов. Объявление опубликовано 7 октября 2026 года.
Для каких приложений предусмотрено понижение
Новый вызов appDowngradeAccessScopes относится к приложениям с Shopify-managed installation. Права должны быть объявлены как optional_scopes и иметь соответствующую пару чтения. Обязательные права так изменить нельзя. Если запрос не проходит проверку, набор прав установки остаётся прежним.
Практический пример — сервис сначала переносит каталог, затем только строит отчёты. После завершения импорта изменение товаров ему может быть больше не нужно. Прежде чем ставить задачу разработчику, перечислите реальные текущие операции сервиса и отделите чтение от записи.
Почему отзыв доступа не всегда подходит
По сообщению Shopify, обычный отзыв write-права способен убрать и чтение, если последнее было получено только через запись. Новый механизм предназначен для сохранения чтения в такой ситуации. Сам вызов меняет только установку обращающегося приложения.
Редакционная рекомендация — не считать отказ от лишних прав косметической настройкой. Если сервис продолжает автоматически исправлять карточки, загрузка отчётов может работать, а исправление перестанет. Решение нужно согласовать с владельцем процесса, который понимает, какие операции больше не требуются магазину.
Как подготовить тестирование
Создайте перечень проверок до перехода на новую версию: чтение нужных товаров, формирование отчёта, ожидаемый отказ от попытки редактирования. Зафиксируйте исходный набор доступов и отдельно результат вызова. Успешное открытие интерфейса приложения не подтверждает, что его фоновые операции сохранились.
В тесте должен быть хотя бы один пример бывшей записи. Если приложение больше не должно менять цены, проверьте именно этот запрет. Ограничиться проверкой входа недостаточно: она не различает полномочия отдельных функций.
Как объяснить результат команде
Владельцу магазина нужен короткий итог: какие данные сервис читает, что больше не меняет и кто отвечает за оставшиеся правки. Не приписывайте функции защиту от любых утечек: чтение тоже является доступом к данным.
Права приложений отличаются от прав сотрудников Shopify. Проверяйте их отдельными списками. Для существующих приложений объявление не требует немедленного действия; оно позволяет подготовить более узкий доступ при использовании подходящей версии API.
Материал отражает сведения на указанную дату. Правила и условия работы площадок могут измениться. Редакционные принципы