Ressource d’inventaire
Remarque
L’API Inventory est disponible uniquement pour les participants pilotes fermés. L’API et la documentation sont susceptibles d’être modifiées.
La ressource Inventaire vous permet de mettre à jour la tarification et la disponibilité des produits dans votre magasin Microsoft Merchant Center (MMC). Pour plus d’informations sur l’utilisation des ressources d’inventaire, consultez Mise à jour des tarifs des produits. Pour obtenir des exemples qui montrent comment mettre à jour la tarification et la disponibilité, consultez Exemples de code.
Base URI
Voici l’URI de base auquel vous ajoutez les modèles.
https://content.api.bingads.microsoft.com/shopping/v9.1
Modèles
Pour créer les points de terminaison utilisés pour mettre à jour vos offres de produits, ajoutez le modèle approprié à l’URI de base.
Modèle | Verbe HTTP | Description |
---|---|---|
/bmc/{mmcMerchantId}/inventory/batch | POST | Utilisez pour effectuer plusieurs mises à jour des prix des produits dans une seule requête. Définissez {mmcMerchantId} sur l’ID du magasin MMC.Objet de requête : Batch Objet de réponse : Batch |
/bmc/{mmcMerchantId}/inventory/{storeCode}/products/{productUniqueId} | POST | Utilisez pour mettre à jour la tarification et la disponibilité d’un seul produit. Définissez {mmcMerchantId} sur l’ID du magasin MMC.Définissez sur {storeCode} en ligne.Définissez {productUniqueId} sur l’ID de produit complet (par exemple, Online :en :US :Sku123).Objet de demande : Product Objet de réponse : Product |
Paramètres de requête
Les points de terminaison peuvent inclure les paramètres de requête suivants.
Paramètre | Description |
---|---|
dry-run | Facultatif. Utilisez lors du débogage de votre application pour tester les appels. Les appels qui incluent ce paramètre n’affectent pas les données de production. Si une erreur se produit, la réponse contient toutes les erreurs que l’appel génère normalement, à l’exception des messages d’erreur secondaires tels que la qualité des données, les problèmes éditoriaux et les validations liées à la base de données. Pour plus d’informations sur le test de votre application, consultez Bac à sable. |
En-têtes
Voici les en-têtes de demande et de réponse.
En-tête | Description |
---|---|
AuthenticationToken | En-tête de la demande. Définissez cet en-tête sur un jeton d’accès OAuth. Pour plus d’informations sur l’obtention d’un jeton d’accès, consultez Authentification de vos informations d’identification. |
Content-Type | En-tête de la demande et de la réponse. Type de contenu dans le corps de la demande ou de la réponse. Définissez sur application/json. |
CustomerAccountId | En-tête de la demande. ID de compte de tout compte que vous gérez pour le compte du client spécifié dans l’en-tête CustomerId . Le compte que vous spécifiez n’a pas d’importance. Spécifiez cet en-tête uniquement si vous gérez un compte pour le compte du client. |
Customerid | En-tête de la demande. ID client du client dont vous gérez le magasin. Spécifiez cet en-tête uniquement si vous gérez le magasin pour le compte du client. Si vous définissez cet en-tête, vous devez également définir l’en-tête CustomerAccountId . |
DeveloperToken | En-tête de la demande. Jeton de développeur de l’application cliente. Chaque demande doit inclure cet en-tête. Pour plus d’informations sur l’obtention d’un jeton, consultez Avez-vous vos informations d’identification Microsoft Advertising et votre jeton de développeur ? |
Emplacement | En-tête de réponse. URL du produit qui a été mis à jour. |
WebRequestActivityId | En-tête de réponse. ID de l’entrée de journal qui contient les détails de la demande. Vous devez toujours capturer cet ID si une erreur se produit. Si vous n’êtes pas en mesure de déterminer et de résoudre le problème, incluez cet ID avec les autres informations que vous fournissez à l’équipe de support technique. |
Objets de requête et de réponse
Voici les objets de requête et de réponse utilisés par l’API.
Objet | Description |
---|---|
Lot | Définit la liste des produits à mettre à jour dans une demande de traitement par lots. |
Erreur | Définit une erreur. |
ErrorResponse | Définit l’objet d’erreur de niveau supérieur pour une mise à jour non batch. |
BatchEntryError | Définit les erreurs qui se sont produites pour un élément pendant le traitement par lots. |
Entrée | Définit une entrée dans une demande ou une réponse par lots. |
Produit | Définit un produit. |
ProductPrice | Définit le prix d’un produit. |
Lot
Définit la liste des produits à mettre à jour dans un lot.
Nom | Valeur | Type |
---|---|---|
Entrées | Liste des produits à mettre à jour dans un lot. Le nombre maximal de produits que vous pouvez spécifier est de 400. | Entry[] |
BatchEntryError
Définit les erreurs qui se sont produites pour une entrée pendant le traitement par lots.
Nom | Valeur | Type |
---|---|---|
erreurs | Liste des erreurs qui se sont produites lors du traitement de l’entrée. | Erreur[] |
code | Code de status HTTP de l’erreur. | Chaîne |
message | Message associé à l’erreur. | Chaîne |
Error
Définit une erreur.
Nom | Valeur | Type |
---|---|---|
domaine | À usage interne uniquement. | Chaîne |
message | Description de l’erreur. | Chaîne |
reason (Raison) | Raison de l’échec de la demande. Par exemple, la validation du produit a échoué. | String |
ErrorResponse
Définit l’objet d’erreur de niveau supérieur pour une mise à jour de produit unique.
Nom | Valeur | Type |
---|---|---|
error | Liste des erreurs qui se sont produites lors du traitement de l’élément. | Erreurs[] |
Erreurs
Définit la liste des erreurs pour un produit.
Nom | Valeur | Type |
---|---|---|
erreurs | Liste des erreurs qui se sont produites lors du traitement de l’entrée. | Erreur[] |
code | Code de status HTTP de l’erreur. | Chaîne |
message | Message associé à l’erreur. | String |
Entrée
Définit une entrée dans une demande de traitement par lots.
Nom | Valeur | Type |
---|---|---|
batchId | ID défini par l’utilisateur qui identifie de façon unique cette entrée dans la demande de lot. Par exemple, si le lot contient 10 entrées, vous pouvez leur attribuer les ID 1 à 10. | Unsigned Integer |
erreurs | Objet d’erreur qui contient la liste des erreurs de validation qui se sont produites. La réponse inclut ce champ uniquement lorsqu’une erreur se produit. | BatchEntryError |
inventory | Prix et disponibilité mis à jour. | Produit |
merchantId | ID du magasin Merchant Center. Étant donné que l’URL inclut l’ID de magasin, ce champ est ignoré. | Long non signé |
Productid | ID de produit complet (par exemple, Online :en :US :Sku123) du produit à mettre à jour. N’incluez pas plusieurs entrées avec le même ID de produit. | String |
storeCode | Code qui identifie le magasin à mettre à jour. Définissez sur en ligne pour mettre à jour le prix et la disponibilité des produits dans le magasin en ligne. | String |
Produit
Définit un produit.
Propriété | Description | Type | Requis |
---|---|---|---|
Disponibilité | Disponibilité du produit. Valeurs possibles :
|
String | Oui |
type | Type de l’objet. Définissez sur content#inventory. | Chaîne | Non |
Prix | Nouveau prix du produit. Spécifiez le prix dans la devise du pays ou de la région cible. Pour plus d’informations sur l’option d’inclure ou non la taxe dans le prix, consultez Politique fiscale du catalogue Microsoft Merchant Center. Le prix doit correspondre au prix indiqué sur la page web du produit et doit être de la plage de 0,01 (1 cent) à 10000000,00 (10 millions). Toutefois, si les conditions suivantes sont remplies, vous pouvez définir le prix sur 0,0 (zéro).
|
ProductPrice | Oui |
salePrice | Prix de vente du produit. Pour les articles en vente, définissez le prix de vente et la date d’effet de la vente (voir salePriceEffectiveDate ). Si vous définissez le prix de vente, mais pas la date d’entrée en vigueur du prix de vente, le prix de vente continuera d’être utilisé jusqu’à l’expiration du produit ou jusqu’à ce que vous définissiez une date d’effet.Le prix de vente doit être de 0,01 (1 cent) à 10000000,00 (10 millions). Toutefois, si les conditions suivantes sont remplies, vous pouvez définir le prix de vente sur 0,0 (zéro).
|
ProductPrice | Non |
salePriceEffectiveDate | Date de début et de fin UTC de la vente. Spécifiez une date uniquement si vous définissez salePrice .Spécifiez les dates de début et de fin au format ISO 8601 . Par exemple, 2016-04-05T08 :00-08 :00/2016-04-10T19 :30-08 :00 (utilisez une barre oblique ('/') pour séparer les dates de début et de fin). Pour plus d’informations, reportez-vous à l’article salePrice .Si elle n’est pas spécifiée, la date de la vente actuelle est supprimée de l’offre. Ne passez pas la valeur Null. |
Chaîne | Non |
ProductPrice
Définit le prix ou le prix de vente d’un produit.
Nom | Valeur | Type |
---|---|---|
Monnaie | Devise dans laquelle le prix est indiqué. Valeurs possibles :
|
Chaîne |
valeur | Prix du produit. | Double |
Codes d’état HTTP
Les requêtes peuvent retourner les codes de status HTTP suivants.
Code d'état | Description |
---|---|
200 | Opération réussie. |
400 | Demande incorrecte Une valeur de paramètre de requête n’est pas valide ou quelque chose dans le corps de la requête n’est pas valide. Si une erreur se produit, l’entrée de lot qui a échoué inclut les erreurs. |
401 | Non autorisé Les informations d’identification de l’utilisateur ne sont pas valides. |
403 | Interdit. L’utilisateur ne dispose pas des autorisations nécessaires pour utiliser la ressource. |
404 | Introuvable. |
409 | Conflit. L’opération n’a pas pu être terminée en raison d’un conflit avec l’état actuel de la ressource. |
413 | Entité de demande trop grande. La taille de la requête dépasse le maximum autorisé. |
500 | Erreur du serveur. |