Partager via


API d’ingestion de produit pour les conteneurs

L’API d’ingestion de produit est une API modernisée qui unifie toutes les API de soumission existantes sur tous les produits de la Place de marché commerciale. Pour plus d’informations sur la prise en main, reportez-vous à l’API d’ingestion de produit.

Cet article fournit des conseils sur l’utilisation des API spécifiquement pour les conteneurs.

Récupérer les configurations de ressources existantes

Récupérez toutes les ressources d’un produit spécifique dans un seul appel d’API.

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

Vous pouvez récupérer toutes les configurations de ressources au sein d’un produit spécifique en utilisant le type de ressource « resource-tree », ainsi que l’ID durable du produit. La version de schéma que vous fournissez est utilisée comme version maximale prise en charge pour chacune des ressources applicables du produit demandé.

Remarque

Si vous ne connaissez pas l’ID durable du produit, vous pouvez d’abord récupérer la ressource de produit en utilisant l’ID externe du produit et en cours d’exécution. Pour plus d’informations, consultez l’API produit : Méthode 1 : arborescence de ressources.

Exemple d’appel GET :

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

Exemple de réponse :

{
  "$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.
  {
     ...
  }]
}

Synchronisation des audiences privées

Pour un produit en direct, les mises à jour des audiences privées dans les environnements brouillons, en préversion et en direct peuvent être effectuées en même temps sans nécessiter de publication. Vous pouvez synchroniser l’audience privée à l’aide de la ressource « price-and-availability-update-private-audiences » en spécifiant les audiences que vous souhaitez ajouter ou supprimer d’un plan spécifique. Cela synchronise les environnements brouillons, en préversion et en direct pour avoir les mêmes valeurs d’audience privée. Vous n’avez pas besoin de fournir la ressource de soumission lors de la synchronisation de l’audience privée.

Pour modifier les audiences brouillons, utilisez la ressource « price-and-availability-plan » et la propriété « privateAudiences ». Cela doit passer par le flux de publication standard pour que les valeurs soient définies en préversion et en direct.

Important

Si votre produit prend en charge plusieurs types d’identificateurs pour configurer l’audience privée (par exemple, les ID de locataire et les ID d’abonnement), vous devez effectuer une publication complète si vous fournissez un nouveau type d’identificateur pour la première fois. Vous ne pouvez pas synchroniser l’audience privée dans ce cas.

Exemple de requête pour synchroniser la configuration de l’audience privée :

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"
        }
      ]
    }
  }
 ]
}

Configurer les propriétés

Définissez les catégories et les secteurs applicables à votre produit conteneur, à votre version d’application et aux contrats juridiques. Veillez à fournir des détails complets et précis sur votre produit dans la ressource Propriétés, afin qu’il soit affiché de manière appropriée et offert au bon ensemble de clients. Pour en savoir plus, consultez les catégories Appsource.

Exemple de corps de requête configurant les propriétés :

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"
        ]
      }
    }
 ]
}

Configurer la liste

Les informations que vous fournissez via des ressources de référencement sont affichées dans les magasins en ligne de la Place de marché commerciale Microsoft. Cela inclut les descriptions de votre produit, des captures d’écran et de vos ressources marketing.

Exemple de corps de requête configurant la liste :

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"
            }
          ]
        }
      }
    }
  ]
}

Configurer l’audience en préversion

Si votre produit conteneur vend via la Place de marché Microsoft, vous devez définir un public en préversion, via des ID d’abonnement, qui peuvent passer en revue votre description de produit avant qu’il ne soit mis en ligne.

Exemple de corps de requête configurant l’audience d’aperçu :

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"
       }
     ]
    }
  ]
}

Configurer un plan - configuration technique

Fournissez un nom de type d’extension de cluster au format « PublisherName.ApplicationName ». Le nom doit être unique dans l’ensemble de vos offres et plans. Vous ne pouvez pas modifier cette valeur une fois le plan publié en préversion. Pour plus d’informations, consultez Définir la configuration technique du plan pour une offre conteneur basée sur une application Kubernetes. Pour en savoir plus, consultez les ressources techniques du conteneur Azure.

Exemple de corps de requête configurant la configuration technique transactable :

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": "537d2130-be25-451e-b3ff-c5b469a13e2d",
          "resourceGroupName": "TestResources",
          "registryName": "testregistry",
          "repositoryName": "containerrepo",
   "tag": "1.0.4",
          "digest": "sha256:000193bfefde1e9"
        },
      ]
    },
  ]
}

Configurer un plan - prix et disponibilité

Exemple de corps de requête configurant un plan masqué :

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"
    }
  ]
}

Les offres conteneur prennent en charge différentes options de facturation. Pour en savoir plus sur les modèles de facturation pris en charge, consultez les options de gestion des licences.

Versions et mises à jour de l’API

Update Qu’est-ce qui a changé ?
1-2024 Tous les points de terminaison de schéma ont été mis à jour de product-ingestion.azureedge.net à schema.mp.microsoft.com

Étapes suivantes