Поделиться через


API приема продуктов для коммерческой платформы

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

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

Внимание

Azure Active Directory (Azure AD) Graph не рекомендуется использовать с 30 июня 2023 г. Идти вперед, мы не делаем дальнейших инвестиций в Azure AD Graph. API Azure AD Graph не имеют соглашения об уровне обслуживания или обслуживании за пределами исправлений, связанных с безопасностью. Инвестиции в новые функции и функциональные возможности будут сделаны только в Microsoft Graph.

Мы отставим Azure AD Graph на добавочных шагах, чтобы у вас было достаточно времени для переноса приложений в API Microsoft Graph. На более позднюю дату, которую мы объявим, мы заблокируем создание новых приложений с помощью Azure AD Graph.

Дополнительные сведения см. в статье "Важно: выход на пенсию в Azure AD Graph и отключение модуля PowerShell".

Начало работы

API приема продуктов можно получить с помощью API MSGraph под именем рабочей нагрузки "прием продукта". Базовый URL-адрес .https://graph.microsoft.com/rp/product-ingestion

Чтобы использовать API приема продуктов, сначала необходимо приобрести следующее:

  • Идентификатор Microsoft Entra и убедитесь, что у вас есть разрешения глобального администратора для каталога
  • Приложение Microsoft Entra
  • Маркер доступа Microsoft Entra

Шаг 1. Завершение предварительных требований

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

  • У вас (или вашей организации) должен быть каталог Microsoft Entra, и у вас должно быть разрешение глобального администратора для каталога. Если вы уже используете Microsoft 365 или другие бизнес-службы от Майкрософт, у вас уже есть каталог Microsoft Entra. В противном случае вы можете создать новый идентификатор Microsoft Entra в Центре партнеров без дополнительной платы.
  • Необходимо связать приложение Microsoft Entra с учетной записью Центра партнеров и получить идентификатор клиента, идентификатор клиента и ключ. Вам потребуется получить маркер доступа Microsoft Entra, который будет использоваться в вызовах API отправки Microsoft Store.

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

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

Примечание.

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

  1. В Центре партнеров свяжите учетную запись Центра партнеров вашей организации с каталогом Microsoft Entra вашей организации.
  2. На странице "Пользователи" в разделе параметров учетной записи Центра партнеров добавьте приложение Microsoft Entra, представляющее приложение или службу, которое будет использоваться для доступа к отправке для учетной записи Центра партнеров. Убедитесь, что вы назначите это приложение роли диспетчера. Если приложение еще не существует в каталоге Microsoft Entra, создайте новое приложение Microsoft Entra в Центре партнеров. Центр партнеров создаст два типа записей для приложения в качестве субъекта-службы и другого в качестве типа приложения Microsoft Entra.
  3. Вернитесь на страницу "Пользователи", выберите имя приложения Microsoft Entra, чтобы перейти к параметрам приложения, а также скопировать значения идентификатора клиента и идентификатора клиента.
  4. Нажмите кнопку "Добавить новый ключ". На следующем экране скопируйте значение ключа . Покинув эту страницу, вы больше не сможете получить доступ к этим сведениям. Дополнительные сведения см. в разделе "Управление ключами" для приложения Microsoft Entra.

Шаг 2. Получение маркера доступа Microsoft Entra

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

Чтобы получить маркер доступа, следуйте инструкциям из статьи Вызовы служб с помощью учетных данных клиента для отправки HTTP POST в конечную точку https://login.microsoftonline.com/{tenant}/oauth2/v2.0/token. Пример запроса:

POST https://login.microsoftonline.com/{tenant}/oauth2/v2.0/token HTTP/1.1
Host: login.microsoftonline.com
Content-Type: application/x-www-form-urlencoded;

grant_type=client_credentials
&client_id=<your_client_id>
&client_secret=<your_client_secret>
&scope=https://graph.microsoft.com/.default

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

Основные понятия

Прежде чем приступить к работе, необходимо понять некоторые основные понятия.

Ресурсы

API структурирован вокруг типов ресурсов, где каждый тип описывается с помощью выделенного определения схемы, на которое ссылается свойство "$schema". Схема состоит из свойств конфигурации этого ресурса. Ресурсы являются основными в создании и обновлении конфигурации различных аспектов данного продукта. Полный список типов ресурсов и их схем см. в справочнике по API ресурсов.

Устойчивый идентификатор

Устойчивый идентификатор — это системный глобальный идентификатор , используемый для уникальной идентификации любого ресурса. Каждый ресурс имеет связанное свойство ID, которое при сочетании с именем типа ресурса составляет устойчивый идентификатор ресурса. Устойчивый идентификатор используется при ссылке на ресурсы для извлечения или изменения.

Формат:

\<resource-type>/\<id>

Пример:

            { 
                "$schema": "https://schema.mp.microsoft.com/schema/product/2022-03-01-preview3",
                "id": "product/12345678-abcd-efgh-1234-12345678901", // durable ID
                "identity": {
                  "externalID": "ds-contoso-image-resize-demo"
                },
                "type": "softwareAsAService", // Product types that can be specified include azureContainer, azureVirtualMachine, softwareAsAService
                "alias": "Contoso Image Resizing Service"
            }

Внешний идентификатор

Внешний идентификатор — это другой уникальный идентификатор , который можно использовать для ссылки на определенные продукты или планы. Это альтернативный способ ссылаться на эти ресурсы вместо использования устойчивого идентификатора. Внешний идентификатор продукта преобразуется в его "offerID" и внешний идентификатор плана преобразуется в его planID, как определено при создании в свойстве identity.

Пример:

            { 
                "$schema": "https://schema.mp.microsoft.com/schema/plan/2022-03-01-preview2",
                "id": "plan/12345678-abcd-efgh-1234-12345678901/4e0bfefa-b993-4b79-a426-871c3bf236a5",
                "identity": {
                  "externalID": "gold-annual"
                },
                "azureRegions": [
                    "azureGlobal"
                  ],
                "alias": "Gold - Annual payment",
                "product": "product/12345678-abcd-efgh-1234-12345678901",
            }

Методы API

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

Примечание.

Все запросы требуют установки версии схемы ($version параметра запроса) в рамках ответа.

Тип API. Description Метод и путь HTTP
Запрос Извлекает существующие ресурсы по следующим компонентам:
-Метод 1: тип ресурса "resource-tree"
-Метод 2: устойчивый идентификатор
-Method 3: параметры строки запроса
-Method 1: GET resource-tree/<product-durableID>
-Method 2: GET <resource-durableID>
-Method 3: GET <resourceType>?<query parameters>
Настройка отправки Отправляет запросы на создание или обновление одного или нескольких ресурсов. После успешной обработки возвращается идентификатор задания, который можно использовать для получения состояния запроса. Этот тип API можно использовать для обновления состояния черновика и публикации изменений, синхронизации частных аудиторий и изменения состояния жизненного цикла ресурсов. POST configure
Настройка состояния Извлекает состояние ожидающего запроса с помощью jobID. GET configure/<jobID>/status
Настройка сведений о состоянии Извлекает подробную сводку завершенного запроса, включая обновленные ресурсы, с помощью jobID. GET configure/<jobID>
Отмена настройки Отменяет указанное задание настройки. POST configure/<jobID>/cancel

стандартный рабочий процесс

Чтобы обновить существующий ресурс, типичный рабочий процесс должен:

  1. Получение существующей конфигурации ресурсов (тип API: запрос с помощью дерева ресурсов)*
  2. Сделайте все необходимые обновления и отправьте запрос конфигурации (тип API: настройка отправки)
  3. Проверьте состояние запроса (тип API: настройка состояния и настройка сведений о состоянии)

* Этот же рабочий процесс можно применить при создании новых ресурсов, но вместо получения ресурсов (шаг 1) используйте таблицу справочника по API ресурсов, чтобы убедиться, что вы используете текущую схему для создаваемого типа ресурса.

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

Снимок экрана: типичный шаблон вызова, используемый для отправки запроса конфигурации.

Примечание.

Обязательно просмотрите все дополнительные предварительные требования, относящиеся к типу предложения, который вы управляете, ссылаясь на руководство ПО API для каждого типа предложения.

Получение существующих конфигураций ресурсов

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

Метод 1. Дерево ресурсов

Schema: https://``schema.mp.microsoft.com``/schema/resource-tree/2022-03-01-preview2

GET resource-tree/<product-durableID>?$version=<schema-version>

Вы можете получить все конфигурации ресурсов в определенном продукте с помощью типа ресурса resource-tree вместе с устойчивым идентификатором продукта.

Последняя версия схемы может отличаться для каждого ресурса. При выполнении запроса на дерево ресурсов указанная версия схемы определяет, какая версия возвращается для каждого ресурса в продукте. Указанная версия служит максимальным ограничением версии, которое возвращает последнюю версию схемы, доступную для всех ресурсов равной или нижней версии. Например, если доступна последняя версия списка планов "2022-03-01-preview3", ответ будет отображать эту версию, если вы указали "2022-03-01-preview5" в запросе GET на дерево ресурсов. Однако при запросе "2022-03-01-preview2" в качестве версии "дерево ресурсов" будет возвращен план "2022-03-01-preview2", хотя последняя версия доступна " 2022-03-01-preview3". Рекомендуется использовать последнюю доступную версию каждого ресурса, чтобы убедиться, что вы используете обновленную схему с новыми поддерживаемыми функциями.

Примечание.

Если вы не знаете устойчивый идентификатор продукта, можно использовать внешний идентификатор продукта для получения ресурса продукта, выполнив команду GET product?externalID=<product-externalID>&$version=<product-schema-version>. Этот запрос использует параметр строки запроса, который подробно описан в методе 3 ниже. Ответ будет содержать устойчивый идентификатор продукта, который можно использовать для будущих запросов.

По умолчанию при запуске вызова GET с помощью "resource-tree" вы вернетесь к черновику ресурсов. Однако, передав параметр запроса TargetType, можно указать нужный целевой объект для получения данных предварительной версии или live. В следующем примере вызов GET возвращает конфигурацию среды предварительной версии для всех ресурсов в продукте "12345678-abcd-efgh-1234-1235678901".

Пример вызова GET:

GET https://graph.microsoft.com/rp/product-ingestion/resource-tree/product/12345678-abcd-efgh-1234-12345678901?targetType="preview"&$version=2022-03-01-preview5

Пример ответа:

        {
          "$schema": "https://schema.mp.microsoft.com/schema/resource-tree/2022-03-01-preview2",
          "root": "product/12345678-abcd-efgh-1234-12345678901",
          "target": {
            "targetType": "preview"
          },
          "resources": [
          { 
            "$schema": "https://schema.mp.microsoft.com/schema/product/2022-03-01-preview3",
            "id": "product/12345678-abcd-efgh-1234-12345678901",
            "identity": {
              "externalID": "ds-contoso-image-resize-demo"
            },
            "type": "softwareAsAService",
            "alias": "Contoso Image Resizing Service"
          },
          { 
            "$schema": "https://schema.mp.microsoft.com/schema/property/2022-03-01-preview3",
            "id": "property/12345678-abcd-efgh-1234-12345678901/public/main",
            "product": "product/12345678-abcd-efgh-1234-12345678901",
            "kind": "azureSaaS",
            "termsConditions": "false",
            "categories": {
          "developer-tools-saas": [
            "devService"
          ]
            }
          },
          {
            "$schema": "https://schema.mp.microsoft.com/schema/plan/2022-03-01-preview2",
            "id": "plan/12345678-abcd-efgh-1234-12345678901/4e0bfefa-b993-4b79-a426-871c3bf236a5",
            "product": "product/071b135e-9faf-4ff7-b113-a3f25bb0f468",
          ...
          }, 
              // The response would include all existing resources within this product.
          {
              ...
          }]
        }

Метод 2. Устойчивый идентификатор

GET <resource-durableID>?$version=<schema-version>

Получение определенного ресурса с помощью его устойчивого идентификатора. После создания ресурса устойчивый идентификатор всегда остается неизменным и может использоваться для получения последних черновых изменений этого ресурса путем вызова метода GET. Например, следующий запрос вернет черновик конфигурации конкретного продукта с помощью версии схемы "2022-03-01-preview3".

GET product/12345678-abcd-efgh-1234-12345678901?$version=2022-03-01-preview3

Внимание

Этот метод используется только для получения конфигурации черновика. Если вы хотите получить предварительный просмотр или динамические данные, используйте метод resource-tree, как описано выше.

Чтобы найти устойчивый идентификатор ресурсов, можно:

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

Помните, что свойство "ID" — это устойчивый идентификатор соответствующего ресурса.

Метод 3. Параметры строки запроса

GET <resourceType>?<query parameters>&$version=<schema-version>

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

В этой таблице показаны поддерживаемые параметры запроса для каждого из поддерживаемых типов ресурсов. Не все типы ресурсов поддерживают каждый из параметров запроса. См. эту таблицу для полного списка поддерживаемых в настоящее время строк запроса.

Тип ресурса Параметры Примеры строки запроса
план продукт*
externalID
maxPageSize
continuationToken$version*
GET plan?product=<product-durableID>&$version=<schema-version>
GET plan?product=<product-durableID>&externalID=<plan-externalID>&$version=<schema-version>
GET plan?product=<product-durableID>&$maxpagesize=<#>&$version=<schema-version>
GET plan?product=<product-durableID>&continuationToken=<token>&$version=<schema-version>
product externalID
type
maxPageSize
continuationToken$version*
GET product?externalID=<product-externalID>&$version=<schema-version>
GET product?type=<product-type>&$version=<schema-version>
GET product?$maxpagesize=<#>&$version=<schema-version>
GET product?continuationToken=<token>&$version=<schema-version>
покорность targetType
maxPageSize
continuationToken$version*
GET submission/<product-durableID>?targetType=<environment>&$version=<schema-version>
GET submission/<product-id>?$maxpagesize=<#>&continuationToken=<token>&$version=<schema-version>
дерево ресурсов targetType$version* GET resource-tree/<product-durableID>?targetType=<environment>&$version=<schema-version>

* Всегда требуются параметры продукта и $version.

Функции каждого из поддерживаемых параметров запроса:

  • product — при передаче параметра product в контексте типа ресурса plan он возвращает все планы в рамках конкретного продукта.
  • externalID — при передаче параметра externalID в контексте продукта или плана он возвращает конфигурацию соответствующего продукта или плана. В отличие от метода resource-tree, этот параметр строки запроса возвращает только сведения об этом ресурсе, а не все ресурсы внутри него.
  • тип — при передаче параметра type в контексте типа ресурса product он возвращает все продукты этого типа, связанные с вашей учетной записью. Например, указав "type=softwareAsAService", будут возвращены все продукты SaaS.
  • targetType — возвращает данные определенной среды в контексте используемого типа ресурса. Поддерживаемые значения targetType : "черновик", "предварительная версия" или "live".
  • $maxpagesize— указав максимальный размер страницы в виде положительного целого числа, этот параметр используется для ограничения результатов поиска при запросе предыдущих отправки.
  • continuationToken — этот параметр можно использовать с параметром "$maxpagesize" для запроса другого набора результатов, доступных в поиске. Значение "continuationToken" предоставляется в ответе предыдущей страницы.
  • $version — это обязательный параметр для всех вызовов, он указывает, какая версия схемы требуется для ответа от выполненного запроса. Последняя версия схемы может отличаться для каждого ресурса, а указанная версия служит ограничением максимальной версии. Система возвращает точную версию схемы в случае доступности или ближайшей версии, которая старше запрошенной версии. Это может помочь поддерживать работу кода, даже если существуют более новые изменения схемы, но для использования последних функций рекомендуется использовать последнюю доступную версию каждой схемы.

Запросы к отправке

Вы можете получить существующие отправки продуктов, выполнив следующие действия GET submission/<product-durableID>. По умолчанию вы получите все активные отправки, включая черновик ссылки, но вы можете дополнительно запросить определенную среду с помощью параметра запроса targetType: (GET submission/<product-durableID>?targetType=<environment>&$version=<version>).

Внимание

После отправки "Предварительная версия" она заменяет предыдущую отправку Live. В этом случае данные теперь представляют среды предварительной версии и live, пока новая отправка не будет опубликована в режиме предварительной версии.

Пример запроса:

GET https://graph.microsoft.com/rp/product-ingestion/submission/12345678-abcd-efgh-1234-12345678901?$version=2022-03-01-preview2

Пример ответа:

В этом примере показан запрос GET для активных отправк, связанных с идентификатором продукта "12345678-abcd-efgh-1234-12345678901". Активная отправка "Live" (отправка/12345678-abcd-efgh-1234-12345678901/1152921515689847470) была опубликована в предварительной версии сначала, а затем в реальном времени. Когда эта отправка была отправлена в режиме реального времени 25 января 2022 года, она представляла как предварительную версию, так и динамическую отправку до создания новой предварительной версии (отправка/12345678901/1152921515689848683) 4 февраля 2022 года.

            {
              "value": [
                {
                  "$schema": "https://schema.mp.microsoft.com/schema/submission/2022-03-01-preview2",
                  "id": "submission/12345678-abcd-efgh-1234-12345688901/0",
                  "product": "product/12345678-abcd-efgh-1234-12345678901",
                  "target": {
                    "targetType": "draft"
                  }
                },
                {
                  "$schema": "https://schema.mp.microsoft.com/schema/submission/2022-03-01-preview2",
                  "id": "submission/12345678-abcd-efgh-1234-12345678901/1152921515689847470",
                  "product": "product/12345678-abcd-efgh-1234-12345678901",
                  "target": {
                    "targetType": "live"
                  },
                  "status": "completed",
                  "result": "succeeded",
                  "created": "2022-01-25T07:13:06.4408032Z"
                },
                {
                  "$schema": "https://schema.mp.microsoft.com/schema/submission/2022-03-01-preview2",
                  "id": "submission/12345678-abcd-efgh-1234-12345678901/1152921515689848683",
                  "product": "product/12345678-abcd-efgh-1234-12345678901",
                  "target": {
                    "targetType": "preview"
                  },
                  "status": "completed",
                  "result": "succeeded",
                  "created": "2022-02-04T20:07:22.4220588Z"
                }
              ]
            }

Создание новых продуктов и ресурсов

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

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

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

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

Изменение существующих продуктов и ресурсов

Вы можете отправлять обновления с помощью настройки полезных данных. Эта полезные данные состоит из одного или нескольких типов ресурсов, а свойство "$schema" указывает на тип ресурса, на который ссылается ссылка.

Совет

Рекомендуется сначала получить существующие ресурсы перед публикацией обновлений, чтобы убедиться, что вы используете последнюю конфигурацию.

После изменения ресурсов узнайте, как выполнить запрос конфигурации.

Запросы конфигурации

Вы можете редактировать и публиковать данные в одной полезных данных. Чтобы отправить запрос конфигурации, используйте метод HTTP POST для настройки API. Настройка полезных данных состоит из массива ресурсов, указывающих на необходимые изменения. Все изменения влияют только на версию черновика, пока вы не будете явно отправлять ресурс отправки для публикации черновых изменений. При публикации в режиме предварительной версии или трансляции включите ресурс отправки и укажите целевую среду. Перед отправкой запроса необходимо знать, как ссылаться на ресурсы и понимать их зависимости.

Schema:<https://schema.mp.microsoft.com/schema/configure/2022-03-01-preview2>

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

Schema: <https://``schema.mp.microsoft.com``/schema/configure-status/2022-03-01-preview2>

Ссылки на ресурсы и зависимости

Ссылки

Чтобы ссылаться на существующий ресурс в запросе на настройку, укажите тип "$schema" ресурса вместе с устойчивым идентификатором ресурса. В случае продуктов и планов можно также ссылаться на эти ресурсы с помощью внешнего идентификатора.

Устойчивый идентификатор можно найти в свойстве "ID", например, если это ресурс продукта, на который мы хотим ссылаться в другом ресурсе:

            { 
                "$schema": "https://schema.mp.microsoft.com/schema/product/2022-03-01-preview3",
                "id": "product/12345678-abcd-efgh-1234-12345678901",
                "identity": {
                  "externalID": "ds-contoso-image-resize-demo"
                },
                "type": "softwareAsAService",
                "alias": "Contoso Image Resizing Service"
            }

Устойчивый идентификатор будет "product/071b135e-9faf-4ff7-b113-a3f25bb0f468".

Затем устойчивый идентификатор можно использовать в приведенном ниже примере ресурса, задав его в свойстве схемы ресурса product следующим образом:

            {
                "$schema": "https://schema.mp.microsoft.com/schema/listing/2022-03-01-preview5", 
                "product": "product/071b135e-9faf-4ff7-b113-a3f25bb0f468", // product durable ID
                  ...
              }

Внешний идентификатор ресурсов продукта и плана определяется в свойстве identity.

            {
                "$schema": "https://schema.mp.microsoft.com/schema/plan/2022-03-01-preview2", 
                "alias": "Gold - Annual payment",
                "identity": {"externalID": "gold-annual"},
                "product": "product/071b135e-9faf-4ff7-b113-a3f25bb0f468",
                  ...
              }

Затем внешний идентификатор плана "gold-annual" можно ссылаться на другие последующие ресурсы в следующем формате:

              {
                "$schema": "https://schema.mp.microsoft.com/schema/plan-listing/2022-03-01-preview5", 
                "product": "product/071b135e-9faf-4ff7-b113-a3f25bb0f468"}
                "plan": {"externalID": "gold-annual"}
                  ...
              }

Пример запроса:

В этом примере для создания нового продукта SaaS с внешним идентификатором ds-contoso-image-resize-demo используется настройка полезных данных. После создания этого продукта вы можете ссылаться на этот продукт, используя его устойчивый идентификатор или внешний идентификатор.

POST https://graph.microsoft.com/rp/product-ingestion/configure?$version=2022-03-01-preview2

            {
              "$schema": "https://schema.mp.microsoft.com/schema/configure/2022-03-01-preview2"
              "resources": [
                { 
                "$schema": "https://schema.mp.microsoft.com/schema/product/2022-03-01-preview3",
                "identity": {
                  "externalID": "ds-contoso-image-resize-demo"
                },
                "type": "softwareAsAService",
                "alias": " Contoso Image Resizing Service"
              }
              ]
            }

Пример ответа:

            {
  "$schema": "https://schema.mp.microsoft.com/schema/configure-status/2022-03-01-preview2",
  "jobID": "071b135e-9faf-4ff7-b113-a3f25bb0f468",
  "jobStatus": "running",
  "jobResult": "pending",
  "jobStart": "2022-08-18T16:35:56.5917185Z",
  "jobEnd": "0001-01-01T00:00:00",
  "errors": []
}

Затем можно использовать идентификатор задания с помощью API настройки состояния для проверки состояния запроса.

Зависимости

Некоторые ресурсы зависят от создания другого ресурса в качестве обязательного условия. В этом случае мы используем свойство resourceName в одной полезных данных, чтобы указать зависимость ресурса продукта в ресурсе плана, как мы создаем оба в одном запросе.

Имя ресурса используется только для идентификации каждого ресурса в рамках выполняемого запроса на настройку. Значение не будет частью данных ресурсов, оно не хранится и не предоставляется клиентам. Кроме того, если в рамках запроса на настройку возникают ошибки, имя ресурса будет использоваться для вызова ресурса, к которому относится ошибка.

Пример запроса:

В этом примере продукт должен быть создан до плана и поэтому используется свойство resourceName. Созданный продукт myNewProduct будет значением, используемым для resourceName и на который ссылается ресурс зависимый план.

POST https://graph.microsoft.com/rp/product-ingestion/configure?$version=2022-03-01-preview2

            {
              "$schema": "https://schema.mp.microsoft.com/schema/configure/2022-03-01-preview2"
              "resources": [
              {
                "$schema": "https://schema.mp.microsoft.com/schema/product/2022-03-01-preview3", 
                "resourceName": "myNewProduct", 
                "alias": "Contoso Image Resizing Service",
                ...
              }, 
              {
                "$schema": "https://schema.mp.microsoft.com/schema/plan/2022-03-01-preview2", 
                "alias": " Gold - Annual payment",
                "product": {"resourceName": "myNewProduct"}
                  ...
              }, 
              }]
            }

Ресурс отправки

При публикации в режиме "предварительная версия" или "live" добавьте ресурс отправки в запрос, содержащий следующее:

  • Свойство "product", обозначающее обновление продукта, на которое ссылается его устойчивый идентификатор или внешний идентификатор.
  • Свойство TargetType, обозначающее целевую среду

При публикации в реальном времени идентификатор предварительной отправки, которую вы хотите опубликовать:

              {
                "$schema": "https://schema.mp.microsoft.com/schema/submission/2022-03-01-preview2",
                "id": "submission/12345678-abcd-efgh-1234-12345678901/11521167929065",    
                "product": "product/12345678-abcd-efgh-1234-12345678901", 
                "target": { "targetType": "live" }
              }

Примечание.

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

Публикация в предварительной версии

Типы коммерческих продуктов поддерживают предварительную среду, и каждое обновление должно быть опубликовано в предварительной версии, прежде чем переходить в режим реального времени. Вы не можете публиковать непосредственно в реальном времени.

Внимание

Исключением из этого является внесение изменений в частную аудиторию ваших планов. При синхронизации обновлений с частной аудиторией эти изменения будут распространяться как на предварительную версию, так и в реальном времени.

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

Метод 1. Публикация всех черновиков ресурсов

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

Пример запроса:

POST https://graph.microsoft.com/rp/product-ingestion/configure?$version=2022-03-01-preview2

            {
              "$schema": "https://schema.mp.microsoft.com/schema/configure/2022-03-01-preview2"
              "resources": [
              {
            // Below is the submission resource to publish to preview
                "$schema": "https://schema.mp.microsoft.com/schema/submission/2022-03-01-preview2",
                "product": "product/12345678-abcd-efgh-1234-12345678901", // This is the product durable ID
                "target": { "targetType": "preview" }
              }
              ]
            }

Метод 2. Публикация определенных проектов ресурсов (также называется модульной публикацией)

Кроме того, если вы не готовы опубликовать все черновики изменений в различных ресурсах, просто предоставьте ресурсы, которые вы хотите опубликовать вместе с ресурсом отправки для активации модульной публикации. Этот подход также можно использовать для внесения изменений в ресурсы и их публикации одновременно вместо массового обновления, как это делается с помощью метода 1. Для модульной публикации все ресурсы требуются за исключением сведений о уровне продукта (например, перечисления, доступности, пакетов, торгового посредника), применимых к типу продукта.

Пример запроса:

В этом примере ресурсы в продукте явно предоставляются в рамках модульной публикации, за которой следует ресурс отправки.

POST https://graph.microsoft.com/rp/product-ingestion/configure?$version=2022-03-01-preview2

            {
              "$schema": "https://schema.mp.microsoft.com/schema/configure/2022-03-01-preview2"
              "resources": [
              {
                "$schema": "https://schema.mp.microsoft.com/schema/product/2022-03-01-preview2", 
                "id": "product/12345678-abcd-efgh-1234-12345678901",
                ...
              },
              {
                "$schema": "https://schema.mp.microsoft.com/schema/plan/2022-03-01-preview2", 
                  ...
              }, 
              // additional resources
              {
                  ...
              },
              // Below is the submission resource to publish to preview
              {
                "$schema": "https://schema.mp.microsoft.com/schema/submission/2022-03-01-preview2",
                "product": "product/12345678-abcd-efgh-1234-12345678901", // This is the product durable ID
                "target": { "targetType": "preview" }
              }
              ]
            }

Публикация в реальном времени

После тестирования и проверки изменений в предварительной версии вы можете отправить изменения в режиме реального времени, отправив запрос на настройку с идентификатором отправки предварительной версии, а для параметра targetType задано значение live. Чтобы найти идентификатор предварительной версии отправки, включаемой в запрос настройки, см . статью "Запросы к отправке".

Внимание

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

Пример запроса:

POST https://graph.microsoft.com/rp/product-ingestion/configure?$version=2022-03-01-preview2

            {
              "$schema": "https://schema.mp.microsoft.com/schema/configure/2022-03-01-preview2"
              "resources": [
              // Below is the submission resource, including the preview submission id, to publish to live.
              {
                "$schema": "https://schema.mp.microsoft.com/schema/submission/2022-03-01-preview2",
                "id": "submission/12345678-abcd-efgh-1234-12345678901/11521167929065",    
                "product": "product/12345678-abcd-efgh-1234-12345678901", // This is the product durable ID
                "target": { "targetType": "live" }
              }
              ]
            }

Проверка состояния запроса

Независимо от ресурсов, включенных в запрос настройки или внесенных изменений, вы получите объект настройки состояния в ответе вскоре после отправки запроса после успешной обработки. Значение jobID важно, так как позже его можно использовать для проверки состояния запроса.

Schema: <https://``schema.mp.microsoft.com``/schema/configure-status/2022-03-01-preview2>

Пример ответа на отправленный запрос:

            {
                "$schema": "https://schema.mp.microsoft.com/schema/configure-status/2022-03-01-preview2",
                "jobID": "d4261631-c583-4949-a612-5150882632e9",
                "jobStatus": "notStarted",
                "jobResult": "pending",
                "jobStart": "2022-03-01T13:32:43.123456Z",
                "jobEnd": "0001-01-01T00:00:00",
                "errors": []
            }

Состояние ожидающего запроса

Состояние можно получить до завершения задания с помощью следующего вызова и ввода идентификатора задания запроса. Объект также может содержать список ошибок, если возникли проблемы с запросом.

GET https://graph.microsoft.com/rp/product-ingestion/configure/<jobID>/status?$version=2022-03-01-preview2

Помните, что время завершения может отличаться в зависимости от сложности запроса.

Сводка завершенного запроса

После завершения задания запроса на настройку можно получить список ресурсов, созданных или обновленных с помощью jobID.

Примечание.

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

Schema: <https://``schema.mp.microsoft.com``/schema/configure-detail/2022-03-01-preview2>

GET https://graph.microsoft.com/rp/product-ingestion/configure/<jobID>?$version=2022-03-01-preview2

Пример запроса:

В приведенном ниже примере запрос GET используется для получения сводных сведений о запросе на настройку, используемого в предыдущем примере, который создал новый продукт SaaS. Ответ — это объект configure-detail с массивом ресурсов, содержащим ресурс продукта, созданный вместе с его устойчивым идентификатором.

GET https://graph.microsoft.com/rp/product-ingestion/configure/071b135e-9faf-4ff7-b113-a3f25bb0f468?$version=2022-03-01-preview2

Пример ответа:

            {
"$schema": "https://schema.mp.microsoft.com/schema/configure-detail/2022-03-01-preview2",
"resources": [
{ 
                "$schema": "https://schema.mp.microsoft.com/schema/product/2022-03-01-preview2",
                "id": "product/12345678-abcd-efgh-1234-12345678901",
                "identity": {
                  "externalID": "ds-contoso-image-resize-demo "
                },
                "type": "softwareAsAService",
                "alias": "Contoso Image Resizing Service"
              }
]
}             

Отмена запроса конфигурации

Перед завершением задания можно попытаться отменить его при необходимости. Для длительных запросов, таких как публикация в режиме предварительной версии или "live", запрос отмены может быть отклонен, если задание достаточно хорошо обработано.

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

POST https://graph.microsoft.com/rp/product-ingestion/configure<jobID>/cancel?$version=2022-03-01-preview2

Пример запроса:

POST <https://graph.microsoft.com/rp/product-ingestion/configure/d4261631-c583-4949-a612-5150882632e9/cancel?$version=2022-03-01-preview2>

Пример ответа успешного запроса на отмену:

            {
                "$schema": "https://schema.mp.microsoft.com/schema/configure-status/2022-03-01-preview2",
                "jobID": "d4261631-c583-4949-a612-5150882632e9",
                "jobStatus": "completed",
                "jobResult": "cancelled",
                "jobStart": "2022-03-01-T13:32:43.123456Z",
                "jobEnd": "2022-03-01T17:34:21.5225132Z",
                "errors": []
            }

Пример ответа в случае отмены не допускается: HTTP Status code: 400

Содержимое:

            {
              "error": {
                "code": "badRequest",
                "message": "Cannot cancel job, job has already completed.",
                "details": []
              }
}

Внимание

Помните, что отмена применяется только к ресурсам, которые еще не обработаны. Некоторые ресурсы, возможно, уже завершили обработку и будут отражать последние обновления конфигурации, несмотря на отмену запроса.

Вы можете получить сводку запроса на настройку после отмены, чтобы проверить, какие ресурсы (если таковые были) уже обработаны до отмены.

Синхронизировать частные аудитории

Для динамического продукта обновления частных аудиторий в черновике, предварительной версии и живых средах можно выполнять одновременно, не требуя публикации. Вы можете синхронизировать частную аудиторию с помощью ресурса price-and-availability-update-private-audiences, указав, какие аудитории нужно добавить или удалить из определенного плана. Это синхронизирует черновик, предварительную версию и динамические среды с одинаковыми значениями частной аудитории. При синхронизации частной аудитории не нужно предоставлять ресурс отправки.

Чтобы изменить черновик аудитории, используйте ресурс price-and-availability-plan и свойство privateAudiences. Это потребуется пройти через обычный поток публикации, чтобы значения были заданы в предварительной версии и в реальном времени.

Внимание

Поддерживаемые типы аудитории — "подписка", "ea", "msdn" и "tenant", но поддержка этих типов зависит от типа продукта. Если ваш продукт поддерживает несколько типов идентификаторов для настройки частной аудитории (например, идентификаторов клиентов и идентификаторов подписок), необходимо выполнить полную публикацию при первом предоставлении нового типа идентификатора. В этом случае вы не можете синхронизировать частную аудиторию.

Пример запроса для синхронизации конфигурации частной аудитории:

POST https://graph.microsoft.com/rp/product-ingestion/configure?$version=2022-03-01-preview2

        {
          "$schema": "https://schema.mp.microsoft.com/schema/configure/2022-03-01-preview2"
          "resources": [
          {
            "$schema": "https://schema.mp.microsoft.com/schema/price-and-availability-update-private-audiences/2022-03-01-preview2",
            "product": "product/12345678-abcd-efgh-1234-12345678901", // product durable ID
            "plan": "plan/12345678-abcd-efgh-1234-12345678901/7e70b11f-809e-4c45-ae2f-1fb3ceaca33b", //plan durable ID 
            "privateAudiences":
            {
              "add ":
              [
                  {
            "type": "tenant",
                    "id": "4c2bdcdc-f10e-468d-8a2a-0832e089215b",
                    "label": "test 1"
                  }
              ],
              "remove ":
              [
                {
            "type": "subscription",
                    "id": "412c45bf-c99a-4e96-b683-77b0aa2dd09e",
                    "label": "test 2"
                }
              ]
            }
          }
          ]
        }

Настройка управления интересами

Подключите систему управления отношениями клиентов (CRM) с продуктом коммерческой платформы, чтобы вы могли получать контактные данные клиента, когда клиент выражает интерес или развертывает продукт. Это подключение можно изменить в любое время во время или после создания продукта. Дополнительные сведения см. в статье "Получение потенциальных клиентов".

Пример запроса для настройки управления потенциальными клиентами:

POST https://graph.microsoft.com/rp/product-ingestion/configure?$version=2022-03-01-preview2

        {
          "$schema": "https://schema.mp.microsoft.com/schema/configure/2022-03-01-preview2"
          "resources": [
            {
            "$schema": "https://schema.mp.microsoft.com/schema/customer-leads/2022-03-01-preview3",
            "id": "customer-leads/a0c6484f-b4fb-4129-ac6b-35f2b5628089",
            "product": "product/a0c6484f-b4fb-4129-ac6b-35f2b5628089",
            "leadDestination": "httpsEndpoint",
            "httpsEndpointLeadConfiguration": {
              "httpsEndpointUrl": "https://www.your-crm.com/triggers/invoke"
            }
          }  
          ]
        }

Состояния жизненного цикла ресурсов

Существуют различные действия, которые можно выполнить с состоянием жизненного цикла ресурса. Не все ресурсы имеют состояние жизненного цикла, а не все состояния жизненного цикла поддерживаются всеми ресурсами. Чтобы узнать, имеет ли ресурс состояние жизненного цикла и какие значения поддерживаются, можно проверить схему ресурсов для существования свойства "lifecycleState". Ниже описаны различные поддерживаемые состояния жизненного цикла.

Deleted

Вы можете удалить определенные ресурсы, обновив свойство "lifecycleState" на "удалено". Вы можете удалить только черновики ресурсов, которые раньше не были опубликованы. Это действие невозможно отменить.

Пример запроса:

В приведенном ниже примере проект плана "базовый" удаляется.

POST https://graph.microsoft.com/rp/product-ingestion/configure?$version=2022-03-01-preview2

        {
          "$schema": "https://schema.mp.microsoft.com/schema/configure/2022-03-01-preview2"
          "resources": [
            {
            "$schema": "https://schema.mp.microsoft.com/schema/plan/2022-03-01-preview2",
            "id": "plan/9f8af57f-ab07-461b-8404-50e10e5e80fb/7e70b11f-809e-4c45-ae2f-1fb3ceaca33b",
            "product": "product/9f8af57f-ab07-461b-8404-50e10e5e80fb",
            "identity": { "externalID": "basic" },
            "alias": "basic plan"
            "lifecycleState": "deleted"
            }
          ]
        }

Устарело

Нерекомендуется удаление ресурса из коммерческой платформы. Чтобы не рекомендуется, задайте для свойства "lifecycleState" значение "не рекомендуется" для ресурсов, поддерживающих его. Существуют различные уровни нерекомендуемого использования. Все типы продуктов поддерживают нерекомендуемую поддержку всего продукта и отдельных планов в нем. Чтобы позже восстановить устаревший ресурс, обратитесь к состоянию жизненного цикла "generallyAvailable".

Пример запроса нерекомендуемого продукта:

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

POST https://graph.microsoft.com/rp/product-ingestion/configure?$version=2022-03-01-preview2

            {
              "$schema": "https://schema.mp.microsoft.com/schema/configure/2022-03-01-preview2"
              "resources": [
                {
                "$schema": "https://schema.mp.microsoft.com/schema/submission/2022-03-01-preview2 ",
                "id": "submission/9f8af57f-ab07-461b-8404-50e10e5e80fb/1152921515689848683",
                "product": "product/9f8af57f-ab07-461b-8404-50e10e5e80fb",
                "target": {
                    "targetType": "live"
                  },
                "lifecycleState": "deprecated"
                }
              ]
            }

При отмене планов свойство "lifecycleState" должно быть изменено на "нерекомендуемое" и изменения должны быть опубликованы в "предварительной версии", а затем "live" для того чтобы нерекомендуемое действие вступило в силу. Это отличается от нерекомендуемого уровня продукта, в котором нерекомендуемая версия будет автоматически настроена в динамической среде.

Пример запроса на отмену плана:

В приведенном ниже примере план в продукте SaaS не рекомендуется. Помните, что для применения этого изменения можно позже опубликовать с помощью ресурса отправки.

POST https://graph.microsoft.com/rp/product-ingestion/configure?$version=2022-03-01-preview2

            {
              "$schema": "https://schema.mp.microsoft.com/schema/configure/2022-03-01-preview2"
              "resources": [
                {
                "$schema": "https://schema.mp.microsoft.com/schema/plan/2022-03-01-preview2 ",
                "id": "plan/9f8af57f-ab07-461b-8404-50e10e5e80fb/7e70b11f-809e-4c45-ae2f-1fb3ceaca33b",
                "product": "product/9f8af57f-ab07-461b-8404-50e10e5e80fb",
                "identity": { "externalID": "basic" },
                "alias": "basic plan"
                "lifecycleState": "deprecated"
                }
              ]
            }

Существуют другие формы отмены, которые зависят от типа продукта. Дополнительные сведения об отмене использования SaaS, виртуальных машин и контейнеров.

Общедоступная версия

generallyAvailable — это состояние жизненного цикла по умолчанию для всех ресурсов. После отмены ресурса его можно восстановить, изменив свойство "lifecycleState" обратно на "generallyAvailable". Чтобы восстановить устаревший продукт, необходимо опубликовать продукт для предварительной версии, а затем жить. Примеры для SaaS, виртуальных машин и контейнеров можно найти в соответствующих статьях.

Пример запроса на восстановление плана:

В приведенном ниже примере план предназначен для восстановления. Чтобы применить это изменение, позже необходимо опубликовать весь способ жизни с помощью ресурса отправки.

POST https://graph.microsoft.com/rp/product-ingestion/configure?$version=2022-03-01-preview2

            {
              "$schema": "https://schema.mp.microsoft.com/schema/configure/2022-03-01-preview2"
              "resources": [
                {
                "$schema": "https://schema.mp.microsoft.com/schema/plan/2022-03-01-preview2",
                "id": "plan/9f8af57f-ab07-461b-8404-50e10e5e80fb/7e70b11f-809e-4c45-ae2f-1fb3ceaca33b",
                "product": "product/9f8af57f-ab07-461b-8404-50e10e5e80fb",
                "identity": { "externalID": "basic" },
                "alias": "basic plan"
                "lifecycleState": "generallyAvailable"
                }
              ]
            }     

Справочник по API ресурсов

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

Примечание.

Доступные ресурсы и их версии можно просмотреть здесь: resources-index

Тип ресурса Description Схема
настройка коммерческой платформы Описывает трансактактируемую конфигурацию продуктов на коммерческой платформе. https://schema.mp.microsoft.com/schema/commercial-marketplace-setup/2022-03-01-preview2
потенциальных клиентов Позволяет подключаться к системе CRM для получения потенциальных клиентов. https://schema.mp.microsoft.com/schema/customer-leads/2022-03-01-preview3
распечатка Сюда входят описания продукта, которые будут отображаться в магазинах коммерческой платформы Майкрософт. https://schema.mp.microsoft.com/schema/listing/2022-03-01-preview5
перечисление активов Снимки экрана и маркетинговые ресурсы, связанные с ресурсом перечисления. https://schema.mp.microsoft.com/schema/listing-asset/2022-03-01-preview5
листинг-трейлер Видеоматериалы, связанные с ресурсом перечисления. https://schema.mp.microsoft.com/schema/listing-trailer/2022-03-01-preview5
microsoft365-integration Включение и выбор типов Microsoft 365. https://schema.mp.microsoft.com/schema/microsoft365-integration/2022-03-01-preview2
план Чтобы создать планы, которые затем будут ссылаться на ресурсы уровня плана, которые вы настраиваете, например перечисление планов. https://schema.mp.microsoft.com/schema/plan/2022-03-01-preview2
описание планов Определите имя плана и описание, так как они будут отображаться на коммерческой платформе. https://schema.mp.microsoft.com/schema/plan-listing/2022-03-01-preview5
price-and-availability-custom-meter Определите пользовательский метр, общий доступ к которым предоставляется в планах. https://schema.mp.microsoft.com/schema/price-and-availability-custom-meter/2022-03-01-preview3
price-and-availability-offer Определите ограниченную аудиторию, которая может просмотреть продукт перед публикацией в реальном времени. https://schema.mp.microsoft.com/schema/price-and-availability-offer/2022-03-01-preview3
price-and-availability-plan Настройте рынки, в которых доступен план, требуемая модель монетизации, цена и условия выставления счетов. https://schema.mp.microsoft.com/schema/price-and-availability-plan/2022-03-01-preview4
price-and-availability-update-private-audiences Обновления частных аудиторий в черновике, предварительной версии и динамических средах можно выполнять одновременно, не требуя публикации. https://schema.mp.microsoft.com/schema/price-and-availability-update-private-audiences/2022-03-01-preview3
private-and-availability-private-offer-plan Используется для настройки абсолютных сведений о ценах на продукт или план, используемых в частном предложении. https://schema.mp.microsoft.com/schema/price-and-availability-private-offer-plan/2022-07-01
частное предложение Определяет имя и тип частного предложения с условиями и сведениями о предложении, а также включенными продуктами или планом и их ценами https://schema.mp.microsoft.com/schema/private-offer/2022-07-01
product Это основной ресурс, определяет имя и тип продукта, все ресурсы ссылались на это. https://schema.mp.microsoft.com/schema/product/2022-03-01-preview3
свойство Определите категории и отрасли, применимые к вашему предложению, версию приложения и юридические контракты. https://schema.mp.microsoft.com/schema/property/2022-03-01-preview5
перекупщик Настройте партнеров в программе поставщик облачных решений (CSP), которым вы хотите предоставить доступ к продукту. https://schema.mp.microsoft.com/schema/reseller/2022-03-01-preview2
дерево ресурсов Описывает список ресурсов для этого продукта в текущем состоянии для целевой среды. https://schema.mp.microsoft.com/schema/resource-tree/2022-03-01-preview2
software-as-a-service-technical-configuration Технические сведения, помогающие коммерческой платформе Майкрософт подключаться к вашему решению. https://schema.mp.microsoft.com/schema/software-as-a-service-technical-configuration/2022-03-01-preview3
покорность Можно использовать для активации различных действий в продукте и указания состояния публикации равнодушных сред продукта (черновик, предварительная версия и трансляция). https://schema.mp.microsoft.com/schema/submission/2022-03-01-preview2
конфигурация virtual-machine-plan-technical-configuration Технические сведения, описывающие виртуальную машину и расположение образа. https://schema.mp.microsoft.com/schema/virtual-machine-plan-technical-configuration/2022-03-01-preview3
конфигурация container-plan-technical-configuration Технические сведения, описывающие свойства образа контейнера. https://schema.mp.microsoft.com/schema/container-plan-technical-configuration/2022-03-01-preview3

Руководство по API для каждого типа продукта

API приема продуктов будет доступен другим типам продуктов в будущем. Так как поддерживаются дополнительные типы продуктов, будут доступны дополнительные рекомендации по каждому типу продукта.

Тип продукта Ресурсы, относящиеся к типу продукта
Частные предложения Создание частных предложений и управление ими с помощью API приема продуктов
SaaS Создание предложений SaaS и управление ими с помощью API приема продуктов
Виртуальные машины Создание предложений виртуальных машин и управление ими с помощью API приема продуктов
Контейнеры Создание предложений контейнеров и управление ими с помощью API приема продуктов

Версии и обновления API

Update Что изменилось?
11-2023 Все конечные точки схемы обновлены с product-ingestion.azureedge.net до schema.mp.microsoft.com
12-2022 Новая схема версии 2022-03-01-preview3 API приема пк для потенциальных клиентов теперь доступна, которая принимает clientID и clientSecret при настройке потенциальных клиентов и останавливает запись serverID и контактных полей электронной почты. Переключитесь на новую версию и предоставьте идентификатор клиента и clientSecret, чтобы продолжить настройку соединителя Marketo для предложений Marketplace. Новый URL-адрес схемы: https://``schema.mp.microsoft.com``/schema/customer-leads/2022-03-01-preview3
09-2022 Поддержка предварительной версии контейнера выпущена как версия 2022-03-01-preview4
08-2022 Поддержка предварительной версии программного обеспечения как службы доступна в версии 2022-03-01-preview3
08-2022 Общедоступный выпуск частного предложения в версии 2022-07-01
05-2022 Поддержка предварительной версии виртуальной машины выпущена как версия 2022-03-01-preview2