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


API приема продуктов для контейнеров

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

В этой статье содержатся рекомендации по использованию API специально для контейнеров.

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

Извлеките все ресурсы в определенном продукте в одном вызове API.

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

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

Примечание.

Если вы не знаете устойчивый идентификатор продукта, вы можете сначала получить ресурс продукта с помощью внешнего идентификатора продукта и запустить его. Дополнительные сведения см. в разделе API продукта: метод 1: дерево ресурсов.

Пример вызова 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": "product_external_id_example"
    },
    "type": "azureContainer",
    "alias": "product_example"
  },
  { 
    "$schema": "https://schema.mp.microsoft.com/schema/commercial-marketplace-setup/2022-03-01-preview2",
    "id": "commercial-marketplace-setup/12345678-abcd-efgh-1234-12345678901",
    "product": "product/12345678-abcd-efgh-1234-12345678901",
    "sellThroughMicrosoft": true
  },
  {
    "$schema": "https://schema.mp.microsoft.com/schema/plan/2022-03-01-preview2",
    "id": "plan/12345678-abcd-efgh-1234-12345678901/98756328-04e9-55ae-9403-52b6c971a956
  ...
  }, 
     // The response would include all existing resources within this product.
  {
     ...
  }]
}

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

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

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

Внимание

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

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

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-preview3",
    "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": " c0cab000-5c00-2ae9-acbe-f5f0bb264498 ",
           "label": "test 1"
         }
      ],
      "remove ":
      [
        {
    "type": "tenant",
           "id": " d1cab000-6c06-4ae9-acbe-b5f0bb264498 ",
           "label": "test 2"
        }
      ]
    }
  }
 ]
}

Настройка свойств

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

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

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/property/2022-03-01-preview5",
      "id": "property/a8b48be1-a630-41b5-b5a5-c2a9f7789922/public/main",
      "product": "product/a8b48be1-a630-41b5-b5a5-c2a9f7789922",
      "kind": "azureContainer",
      "termsConditions": "standardMicrosoft",
      "categories": {
        "containers": [
          "container-apps",
   "container-images"
        ]
      }
    }
 ]
}

Настройка списка

Сведения, предоставляемые с помощью перечисления ресурсов, отображаются в интернет-магазинах Microsoft Commercial Marketplace. Сюда входят описания продукта, снимки экрана и маркетинговые ресурсы.

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

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/listing/2022-03-01-preview5",
      "id": "listing/6d50c7bd-eb19-4d4c-b2f0-beb14aee084b/public/main/default/en-us",
      "product": "product/6d50c7bd-eb19-4d4c-b2f0-beb14aee084b",
      "kind": "azureContainer",
      "title": "ContainerCM0815",
      "description": "<div>This offer is in the early stages of development and not for general public consumption. Use is restricted to a limited audience, and has no commercial purpose beyond the testing for which it is intended.</div>",
      "searchResultSummary": "Container product",
      "shortDescription": "This offer is in the early stages of development and not for general public consumption",
      "privacyPolicyLink": "https://www.company.com/privacy",
      "generalLinks": [
 {
   "displayText": "Product link",
   "link": "https://www.company.com/mkt",
 }
      ],
      "globalSupportWebsite": "https://testprivacyurl.com",
      "governmentSupportWebsite": "https://testprivacyurl.com",
      "supportContact": {
        "name": "Support",
        "email": "support@company.com",
        "phone": "4255555555"
      },
      "engineeringContact": {
        "name": "Engineering",
        "email": "john@company.com",
        "phone": "4255555555"
      },
      "cloudSolutionProviderContact": {
        "name": "CSP",
        "email": "csp@company.com",
        "phone": "4255555555"
      },
      "languageID": "en-us"
    },
    {
      "$schema": "https://schema.mp.microsoft.com/schema/listing-asset/2022-03-01-preview5",
      "product": "product/6d50c7bd-eb19-4d4c-b2f0-beb14aee084b",
      "kind": "azure",
      "listing": "listing/6d50c7bd-eb19-4d4c-b2f0-beb14aee084b/public/main/default/en-us",
      "type": "azureLogoScreenshot",
      "languageID": "en-us",
      "description": "Image caption",
      "displayOrder": 0,
      "fileName": "test.png",
      "friendlyName": "test.png",
      "url": "https://company.com/12345/test.png"
    },
    {
      "$schema":  "https://schema.mp.microsoft.com/schema/listing-asset/2022-03-01-preview5",
      "product": "product/6d50c7bd-eb19-4d4c-b2f0-beb14aee084b",
      "kind": "azure",
      "listing": "listing/6d50c7bd-eb19-4d4c-b2f0-beb14aee084b/public/main/default/en-us",
      "type": "azureLogoLarge",
      "languageID": "en-us",
      "description": "",
      "displayOrder": 0,
      "fileName": "216x216.png",
      "friendlyName": "216x216.png",
      "url": "https://company.com/12345/216x216.png"
    },
    {
      "$schema": "https://schema.mp.microsoft.com/schema/listing-trailer/2022-03-01-preview5",
      "product": "product/6d50c7bd-eb19-4d4c-b2f0-beb14aee084b",
      "kind": "azure",
      "listing": "listing/6d50c7bd-eb19-4d4c-b2f0-beb14aee084b/public/main/default/en-us",
      "streamingUrl": "https://www.youtube.com/watch?v=123",
      "assets": {
        "en-us": {
          "title": "Video",
          "imageList": [
            {
              "url": "https://company.com/12345/trailer.png"
            }
          ]
        }
      }
    }
  ]
}

Настройка аудитории предварительной версии

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

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

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-offer/2022-03-01-preview3",
     "id": "price-and-availability-offer/a8b48be1-a630-41b5-b5a5-c2a9f7789922",
     "product": "product/a8b48be1-a630-41b5-b5a5-c2a9f7789922",
     "previewAudiences": [
       {
        "type": "subscription",
        "id": "c2d12fa0-c012-33b0-b0a0-c0a0a0011222",
        "label": "Test Subscription"
       }
     ]
    }
  ]
}

Настройка плана — техническая конфигурация

Укажите имя типа расширения кластера в формате PublisherName.ApplicationName. Имя должно быть уникальным для всех ваших предложений и планов. Это значение нельзя изменить после публикации плана в режиме предварительной версии. Дополнительные сведения см. в разделе "Настройка технической конфигурации плана" для предложения контейнера на основе приложений Kubernetes. Дополнительные сведения см. в техническом ресурсе контейнеров Azure.

Пример текста запроса, настроив трансактируемую техническую конфигурацию:

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/container-plan-technical-configuration/2022-03-01-preview3",
      "id": "container-plan-technical-configuration/a8b48be1-a630-41b5-b5a5-c2a9f7789922",
      "product": "product/a8b48be1-a630-41b5-b5a5-c2a9f7789922",
      "plan": "plan/a8b48be1-a630-41b5-b5a5-c2a9f7789922/4db792e6-8e10-439d-9db2-a0e98fa7e174",
      "payloadType": " cnab",
      "clusterExtensionType": " unique.extension.type",
      "cnabReferences": [
 {
          "tenantID": "421c00000-ac12-451e-b3ff-c5b469a13e2d",
          "subscriptionID": "aaaa0a0a-bb1b-cc2c-dd3d-eeeeee4e4e4e",
          "resourceGroupName": "TestResources",
          "registryName": "testregistry",
          "repositoryName": "containerrepo",
   "tag": "1.0.4",
          "digest": "sha256:000193bfefde1e9"
        },
      ]
    },
  ]
}

Настройка плана — цена и доступность

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

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-plan/2022-03-01-preview4",
      "product": "product/a8b48be1-a630-41b5-b5a5-c2a9f7789922",
      "plan": "plan/a8b48be1-a630-41b5-b5a5-c2a9f7789922/0abbe45b-c405-4c08-bb14-ec485002084e",
      "visibility": "hidden",
      "audience": "public"
    }
  ]
}

Контейнер предлагает различные варианты выставления счетов. Дополнительные сведения о поддерживаемых моделях выставления счетов см. в разделе "Параметры лицензирования".

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

Update Что изменилось?
1-2024 Все конечные точки схемы обновлены с product-ingestion.azureedge.net до schema.mp.microsoft.com