Vérifier l’inventaire par type de ressource à l’aide des API de l’Espace partenaires

Comment vérifier l’inventaire des éléments de catalogue filtrés par un type de ressource spécifique.

Prerequisites

  • Informations d’identification, comme décrites dans l’authentification du Partner Center. Ce scénario prend en charge l'authentification avec des identifiants d'application autonomes ainsi que des identifiants combinés application+utilisateur.

  • ID de produit (facultatifs). ID SKU (facultatif).

  • Valeur valide resourceType (obligatoire). Consultez les types de ressources pris en charge pour obtenir la liste complète des valeurs acceptées.

  • Tout contexte supplémentaire nécessaire pour vérifier l’inventaire des SKU mentionnés par les identifiants de produit/SKU fournis. Ces exigences peuvent varier selon le type de produit/référence SKU et peuvent être déterminées à partir de la propriété InventoryVariablesde la référence SKU.

Requête REST

Syntaxe de la requête

Méthode URI de la requête
POST {baseURL}/v1/extensions/product/checkinventorybyresourcetype?country={country-code}&resourceType={resourceTypeValue} HTTP/1.1

Paramètres d’URI

Utilisez les paramètres de requête suivants pour vérifier l’inventaire par type de ressource.

Name Type Obligatoire Description
country-code string Oui ID de pays/région.
resourceTypeValue string Oui Type de ressource pour filtrer les résultats de l’inventaire. Consultez les types de ressources pris en charge pour connaître les valeurs valides.

Types de ressources pris en charge

Valeur du type de ressource Description Région requise ?
AppService App Service Oui
Avs Azure VMware Solution Oui
AzureDataExplorer Explorateur de données Azure Non : exclure la région pour éviter une erreur 400 de type Bad Request
AzureFiles Azure Files Oui
Backup Sauvegarde Azure Oui
BlockBlob Stockage d’objets blob de blocs Oui
CopilotCredit Crédit Copilot Non : exclure la région pour éviter une erreur 400 de type Bad Request
CosmosDb Azure Cosmos DB, une base de données distribuée globale Non : exclure la région pour éviter une erreur 400 de type Bad Request
Databricks Azure Databricks Non : exclure Region pour éviter une erreur 400 Bad Request
DataFactory Azure Data Factory. Oui
Hôte dédié Azure Dedicated Host (hôte dédié Azure) Oui
FabricCapacity capacité de Microsoft Fabric Oui
FoundryAgent Foundry Agent Non : exclure la région pour éviter une erreur 400 de type Bad Request
GitHubAICredit Crédit IA GitHub Non : exclure la région pour éviter une erreur 400 « Bad Request »
GitHubP3 GitHub P3 Non : exclure la région pour éviter une erreur 400 de type Bad Request
ManagedDisk Disque managé Azure Oui
MariaDB Base de données Azure pour MariaDB Oui
MDC Microsoft Defender pour le cloud Non : exclure la région pour éviter une erreur 400 de type Bad Request
MySQL Base de données Azure pour MySQL Oui
NetAppStorage Azure NetApp Files (service de stockage de fichiers dans le cloud) Oui
Nutanix Nutanix Oui
OpenAIPTU Azure OpenAI PTU Oui
PostgreSQL Base de données Azure pour PostgreSQL Oui
RedHat Red Hat Non : exclure la région pour éviter une erreur 400 Bad Request
RedHatOsa Red Hat OpenShift sur Azure Non : exclure la région pour éviter une erreur 400 « Bad Request »
RedisCache Cache Azure pour Redis Oui
SapHana SAP HANA sur Azure Oui
Sentinel Microsoft Sentinel Non : exclure la région pour éviter une erreur 400 de type Bad Request
Bases de données SQL Bases de données SQL Azure Oui
SqlDataWarehouse Azure SQL Data Warehouse Oui
SuseLinux SUSE Linux Non : exclure la région pour éviter une erreur 400 « Bad Request »
Synapse Azure Synapse Analytics Non : exclure la région pour éviter une erreur 400 de type Bad Request
Machines Virtuelles Machines virtuelles Azure Oui
VMwareCloudSimple VMware CloudSimple Oui

En-têtes de requête

Pour plus d’informations, consultez En-têtes REST de l’Espace Partenaires.

Corps de la demande

Détails de la demande d’inventaire, constitué d’une ressource InventoryCheckRequest contenant une ou plusieurs ressources InventoryItem .

Vérifiez que l’abonnement Azure spécifié dans le corps de la demande est inscrit et activé pour acheter Azure RIS. Consultez Inscrire un abonnement pour plus d’informations sur le processus d’inscription.

TargetItems est facultatif. Si vous l’excluez ou si vous le définissez à null ou [], la réponse inclut tous les éléments du type de ressource. Si vous l’incluez, la réponse est filtrée sur ces ID de produit. Chaque TargetItems entrée doit avoir un ProductId non vide, ou la requête renvoie un code 400.

Bonne pratique : Transmettez TargetItems uniquement les ID de produit dont vous avez besoin pour conserver les réponses plus petites, plus rapides et pertinentes. Sinon, les types de ressources généraux tels que VirtualMachines peuvent retourner des milliers d’éléments.

Exemple de requête

POST https://api.partnercenter.microsoft.com/v1/extensions/product/checkinventorybyresourcetype?country=US&resourceType=VirtualMachines HTTP/1.1
Authorization: Bearer <token>
Accept: application/json
MS-RequestId: d1b1981a-e088-4610-870a-eebec96d6bcd
MS-CorrelationId: aaaa0000-bb11-2222-33cc-444444dddddd
X-Locale: en-US
Content-Type: application/json

{"TargetItems":[{"ProductId":"DZH318Z0BQ3P"}],"InventoryContext":{"customerId":"d6bf25b7-e0a8-4f2d-a31b-97b55cfc774d","azureSubscriptionId":"3A231FBE-37FE-4410-93FD-730D3D5D4C75","armRegionName":"westeurope"}}

Réponse REST

Si elle réussit, le corps de la réponse contient une collection d’objets InventoryItem renseignés avec les détails de restriction, le cas échéant.

Note

Si un inventoryItem d’entrée représente un élément introuvable dans le catalogue ou ne correspond pas au type de ressource spécifié, il ne sera pas inclus dans la collection de sorties.

Réussite de la réponse et codes d’erreur

Chaque réponse est accompagnée d’un code d’état HTTP qui indique la réussite ou l’échec ainsi que des informations de débogage supplémentaires. Utilisez un outil de suivi réseau pour lire ce code, le type d’erreur et les paramètres supplémentaires. Pour obtenir la liste complète, consultez les codes d’erreur de l’Espace partenaires.

Exemple de réponse

HTTP/1.1 200 OK
Content-Length: 1021
Content-Type: application/json; charset=utf-8
MS-CorrelationId: aaaa0000-bb11-2222-33cc-444444dddddd
MS-RequestId: d1b1981a-e088-4610-870a-eebec96d6bcd
X-Locale: en-US
[
    {
        "productId": "DZH318Z0BQ3P",
        "skuId": "0039",
        "isRestricted": true,
        "restrictions": [
            {
                "reasonCode": "NotAvailableForSubscription",
                "description": "Restriction identified of type 'Location' with values 'japanwest'.",
                "properties": {
                    "type": "Location",
                    "values": "japanwest"
                }
            }
        ]
    },
    {
        "productId": "DZH318Z0BQ3P",
        "skuId": "0038",
        "isRestricted": false,
        "restrictions": []
    }
]

Produits non retournés en réponse

Si un produit ou une référence SKU est disponible pour l’abonnement et la région spécifiés, mais est soumise à des restrictions, la réponse inclut le produit avec isRestricted: true et les détails de restriction applicables.

Si un produit n’est pas disponible pour l’abonnement et la région spécifiés, la réponse omet entièrement le produit.

Important

Traitez un produit manquant de la réponse comme non disponible pour l’abonnement et la région spécifiés uniquement.

Scénario Réponse CheckInventoryByResourceType
Produit non disponible pour l’abonnement/la région Produit omis de la réponse
Référence disponible isRestricted: false
SKU restreint dans cette région Renvoyé avec isRestricted: true