Создание и управление отправками

Используйте API отправки Microsoft Store для программного запроса и создания отправки приложений, надстроек и пакетов для учетной записи Центра партнеров вашей организации. Этот API полезен, если ваша учетная запись управляет множеством приложений или надстроек, и вы хотите автоматизировать и оптимизировать процесс отправки для этих ресурсов. Этот API использует Azure Active Directory (Azure AD) для проверки подлинности вызовов из приложения или службы.

Следующие шаги описывают полный процесс использования API подачи заявок в Microsoft Store.

  1. Убедитесь, что вы выполнили все предварительные требования.
  2. Перед вызовом метода в API отправки в Microsoft Store получите маркер доступа Azure AD. После получения токена у вас есть 60 минут для его использования в обращениях к API отправки в Microsoft Store, прежде чем он истечет. После истечения срока действия маркера можно создать новый маркер.
  3. Вызовите API отправки Microsoft Store.

Важный

Если вы используете этот API для создания отправки для приложения, тестового пакета или надстройки, обязательно внесите дальнейшие изменения в отправку только с помощью API, а не в Центре партнеров. Если вы используете Центр партнеров для изменения отправки, созданной с помощью API, вы больше не сможете изменить или зафиксировать эту отправку с помощью API. В некоторых случаях отправка может оставаться в ошибочном состоянии, не позволяющем продолжить процесс. В этом случае необходимо удалить отправку и создать новую отправку.

Важный

Этот API нельзя использовать для публикации заявок на покупки для организаций через Microsoft Store для бизнеса и Microsoft Store для образования (эти программы были закрыты) или публикации бизнес-приложений непосредственно для предприятий. Для обоих этих сценариев необходимо опубликовать отправку в Центре партнеров.

Заметка

Этот API нельзя использовать с приложениями или надстройками, которые требуют обязательных обновлений приложения, а также с надстройками, управляемыми Магазином и предназначенными для потребления. Если вы используете API отправки Microsoft Store с приложением или надстройкой, которая использует одну из этих функций, API вернет код ошибки 409. В этом случае необходимо использовать Центр партнеров для управления отправками приложений или дополнений.

Заметка

Этот API нельзя использовать с приложениями или надстройками, которые находятся в ценовой версии 2. Продукт находится на версии Ценообразование 2, если на странице Цены и доступность в разделе Цены присутствует кнопка Проверить цену для каждого рынка. Если вы используете API отправки Microsoft Store с приложением или надстройкой, которая использует версию ценообразования 2, то API вернет неизвестный уровень в части, связанной с ценообразованием. Этот API можно продолжать использовать для обновления модулей, отличных от цен и доступности.

Шаг 1. Выполнение предварительных требований для использования API отправки в Microsoft Store

Прежде чем приступить к написанию кода для вызова API отправки Microsoft Store, убедитесь, что выполнены следующие предварительные требования.

  • У вас (или организации) должен быть каталог Azure AD, и у вас должно быть разрешение Global administrator для каталога. Если вы уже используете Microsoft 365 или другие бизнес-службы Microsoft, у вас уже есть каталог Azure AD. В противном случае вы можете создать новую Azure AD в Центре партнеров без дополнительной платы.

  • Необходимо соединить приложение Azure AD с учетной записью Центра партнеров и получить идентификатор клиента, идентификатор клиента и ключ. Эти значения необходимы для получения токена доступа Azure AD, который будет использоваться для вызовов к API для отправки в Microsoft Store.

  • Подготовьте приложение для использования с API отправки в Microsoft Store:

    • Если приложение еще не существует в Центре партнеров, необходимо создать приложение, зарезервировав его имя в Центре партнеров. API отправки в Microsoft Store нельзя использовать для создания приложения в Центре партнеров, вы должны использовать Центр партнеров для его создания, после этого можно использовать API для доступа к приложению и программно создавать для него заявки. Однако API можно использовать для программного создания надстроек и упаковки рейсов перед их отправкой.

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

    • Если вы создаете или обновляете отправку приложения и необходимо включить пакет приложения, подготовьте пакет приложения.

    • Если вы создаете или обновляете отправку приложения и вам нужно включить снимки экрана или изображения для описания Магазина, подготовьте снимки экрана и изображения приложения.

    • Если вы создаете или обновляете заявку на надстройку, и вам нужно включить значок, подготовьте его.

Связывание приложения Azure AD с учетной записью Центра партнеров

Прежде чем использовать API отправки в Microsoft Store, необходимо связать приложение Azure AD с учетной записью Центра партнеров, получить идентификатор клиента и идентификатор клиента для приложения и создать ключ. Приложение Azure AD представляет приложение или службу, из которой требуется вызвать API отправки Microsoft Store. Вам нужен идентификатор арендатора, идентификатор клиента и ключ для получения токена доступа Azure AD, который передается в API.

Заметка

Эту задачу нужно выполнить только один раз. После получения идентификатора клиента, идентификатора клиента и ключа их можно повторно использовать в любое время, когда необходимо создать новый маркер доступа Azure AD.

  1. В Центре партнеров свяжите учетную запись Центра партнеров вашей организации с каталогом Azure AD вашей организации.

  2. Затем на странице Users в разделе настройки учетной записи Центра партнеров добавьте приложение Azure AD, представляющее приложение или службу, которая будет использоваться для доступа к отправкам вашей учетной записи в Центре партнеров. Убедитесь, что вы назначите этому приложению роль менеджера. Если приложение еще не существует в каталоге AD Azure, вы можете создать новое приложение Azure AD в Центре партнеров.

  3. Вернитесь на страницу Users, щелкните имя приложения Azure AD, чтобы перейти к параметрам приложения и скопировать значения Tenant ID и Client ID.

  4. Щёлкните по «Добавить новый ключ». На следующем экране скопируйте значение ключа . После выхода из этой страницы вы не сможете получить доступ к этой информации еще раз. Дополнительные сведения см. в разделе Manage key for an Azure AD application.

Шаг 2: Получение токена доступа Azure AD

Перед вызовом любого из методов API отправки Microsoft Store необходимо сначала получить токен доступа Azure AD, который передаётся в заголовок Authorization каждого метода API. После получения маркера доступа у вас есть 60 минут, чтобы использовать его до истечения срока действия. После истечения срока действия маркера можно обновить маркер, чтобы продолжить использовать его в дальнейших вызовах API.

Чтобы получить токен доступа, следуйте инструкциям в Вызовы от службы к службе с использованием клиентских учетных данных для отправки HTTP POST на конечную точку https://login.microsoftonline.com/<tenant_id>/oauth2/token. Ниже приведен пример запроса.

POST https://login.microsoftonline.com/<tenant_id>/oauth2/token HTTP/1.1
Host: login.microsoftonline.com
Content-Type: application/x-www-form-urlencoded; charset=utf-8

grant_type=client_credentials
&client_id=<your_client_id>
&client_secret=<your_client_secret>
&resource=https://manage.devcenter.microsoft.com

Для значения tenant_id в URI POST и параметрах client_id и client_secret укажите идентификатор клиента, идентификатор клиента и ключ приложения, полученного из Центра партнеров в предыдущем разделе. Для параметра ресурса необходимо указать .

После истечения срока действия маркера доступа можно получить новый, выполнив тот же вызов HTTP.

Примеры, демонстрирующие получение токена доступа с помощью C#, Java или Python, см. в примерах кода API отправки в Microsoft Store.

Шаг 3. Использование API отправки в Microsoft Store

После получения токена доступа Azure AD, можно вызывать методы API публикации Microsoft Store. API включает множество методов, сгруппированных по сценариям для приложений, дополнений и пакетных проверок. Для создания или обновления отправки обычно вызывается несколько методов в API отправки Microsoft Store в определенном порядке. Сведения о каждом сценарии и синтаксисе каждого метода см. в статьях в следующей таблице.

Заметка

После получения маркера доступа у вас есть 60 минут, чтобы вызвать методы в API отправки Microsoft Store, прежде чем срок действия маркера истечет.

Сценарий Описание
Приложения Извлеките данные о всех приложениях, зарегистрированных на вашей учетной записи Центра партнеров, и создайте публикации для приложений. Дополнительные сведения об этих методах см. в следующих статьях:
Надстройки Получение, создание или удаление надстроек для приложений, а затем получение, создание и удаление отправки для надстроек. Дополнительные сведения об этих методах см. в следующих статьях:
Рейсы по пакетам Получение, создание и удаление пакетов для ваших приложений, а затем получение, создание или удаление отправки для пакетов. Дополнительные сведения об этих методах см. в следующих статьях:

Примеры кода

В следующих статьях приведены подробные примеры кода, демонстрирующие использование API отправки Microsoft Store на нескольких разных языках программирования:

Модуль StoreBroker PowerShell

В качестве альтернативы вызову API отправки Microsoft Store напрямую мы также предоставляем модуль PowerShell с открытым исходным кодом, который реализует интерфейс командной строки на вершине API. Этот модуль называется StoreBroker. Этот модуль можно использовать для управления отправкой приложений, предварительных выпусков и дополнений из командной строки вместо прямого вызова API отправки Microsoft Store, или вы можете просто просмотреть источник, чтобы найти больше примеров вызова этого API. Модуль StoreBroker активно используется в Корпорации Майкрософт в качестве основного способа отправки многих сторонних приложений в Магазин.

Дополнительные сведения см. на странице StoreBroker на GitHub.

Устранение неполадок

Проблема Резолюция
После вызова API отправки Microsoft Store из PowerShell данные ответа API повреждаются, если преобразовать их из формата JSON в объект PowerShell с помощью командлета ConvertFrom-Json, а затем снова в формат JSON с помощью командлета ConvertTo-Json. По умолчанию параметр -Depth для командлета ConvertTo-Json имеет значение 2 уровня объектов, что слишком неглубоко для большинства объектов JSON, возвращаемых API отправки Microsoft Store. При вызове командлета ConvertTo-Json задайте для параметра -Depth большее число, например 20.

Дополнительная помощь

Если у вас есть вопросы об API отправки Microsoft Store или вам нужна помощь по управлению отправками с помощью этого API, используйте следующие ресурсы:

  • Задайте свои вопросы на наших форумах.
  • Посетите страницу поддержки и запросите один из предложенных вариантов помощи для Центра партнеров. Если вам будет предложено выбрать тип проблемы и категорию, выберите "Отправка приложения" и "Сертификация" и"Отправка приложения" соответственно.