NouveautésNouveau

Google Shopping est désormais pris en charge par Commerce Search et Commerce Product

API
Google Shopping avec les étiquettes COMMERCE_SERP et COMMERCE_PRODUCT, les trois premiers produits pour cerave moisturizing cream avec prix, note et boutique, et les quatre boutiques que Google liste pour le premier, de Target à 4,19 $ à CVS Pharmacy à 7,49 $

Interrogez l’onglet Shopping de Google aux États-Unis avec Commerce Search, puis lisez un produit avec Commerce Product pour obtenir chaque boutique listée par Google, avec son prix, son stock et sa page produit.

Ce que vous obtenez

  • site: "google_shopping" dans COMMERCE_SERP : une tâche interroge l’onglet Shopping de Google aux États-Unis et renvoie jusqu’à 40 produits dans l’ordre de Google, chacun avec rank, productId, title, price et url.
  • seller : la boutique affichée sur chaque fiche, comme Target, Ulta Beauty ou Walmart, avec rating, reviewCount et imageUrl quand la fiche les affiche.
  • COMMERCE_PRODUCT lit un produit de ces résultats à partir de son url et renvoie title, price, seller, inStock, rating, images et specs.
  • offers : toutes les boutiques que Google liste pour le produit, chacune avec seller, title, price, currency, inStock et l’url de sa propre page produit.

Fonctionnement

Chaque recherche lit l’onglet Shopping que Google affiche pour votre requête aux États-Unis, la page de google.com/search?udm=28. L’url d’un produit ouvre cette page de résultats et porte l’ID et le titre du produit après # ; c’est ainsi que COMMERCE_PRODUCT retrouve le même produit.

La lecture ouvre la page de résultats, clique sur le produit et lit le panneau que Google affiche : boutiques, description, caractéristiques et photos. Les price, listPrice, seller et inStock du produit viennent de la première boutique, celle que Google classe comme meilleur prix. Google remanie les résultats des requêtes larges au fil de la journée ; la lecture cherche donc le produit d’abord par sa requête, puis par son titre.

reviewCount porte le nombre exact affiché par Google, jusqu’à 1 000 ; au-delà, Google l’abrège en 17K par exemple.

Cas d’usage

  • Voyez quelle boutique détient le meilleur prix Google pour votre produit et l’écart avec les autres boutiques.
  • Suivez chaque jour les produits que Google Shopping classe pour une recherche de catégorie, à côté des classements Amazon, Walmart et Target pour la même requête.
  • Rassemblez les pages produit de toutes les boutiques qui vendent un produit, puis lisez celle de Target, Walmart ou Ulta avec Commerce Product.

Envoyer la requête

Envoyez la requête avec votre clé API dans l’en-tête Authorization.

curl -X POST https://api.querying.ai/v1/async/task \
  -H "Authorization: Bearer $QUERYING_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "taskType": "COMMERCE_SERP",
    "payload": {
      "site": "google_shopping",
      "query": "cerave moisturizing cream",
      "limit": 10
    }
  }'

Champs de la requête

taskTypestringObligatoire
Le moteur à interroger, par exemple CHATGPT ou GOOGLE.
payload.sitestringObligatoire
La boutique à interroger, par exemple amazon, coupang ou rakuten. Les 21 valeurs figurent avec le moteur.
payload.querystringObligatoire
La recherche, rédigée comme un acheteur la tape dans le champ de recherche de la boutique. De 1 à 500 caractères.
payload.countrystring
Le pays de la boutique, par exemple US pour amazon ou KR pour coupang. C’est aussi la valeur par défaut.
payload.limitinteger
Nombre de produits renvoyés, de 1 à 40. 20 par défaut.
webhook.urlstring
Une adresse HTTPS de votre serveur. La tâche terminée y est envoyée dès qu’elle se termine.

Réponse

Voici une tâche terminée, raccourcie pour la lecture.

JSON
{
  "success": true,
  "task": {
    "id": "b02ec42c-2ea1-4a6f-ba70-1b3099b8ceff",
    "taskType": "COMMERCE_SERP",
    "status": "COMPLETED",
    "createdAt": "2026-10-23T01:32:45.682Z"
  },
  "credits": { "creditsToCharge": 3, "creditsCharged": 3 },
  "response": {
    "site": "google_shopping",
    "query": "cerave moisturizing cream",
    "country": "US",
    "returnedCount": 10,
    "products": [
      {
        "rank": 1,
        "productId": "16245040360969784676",
        "title": "CeraVe Moisturizing Cream",
        "url": "https://www.google.com/search?q=cerave+moisturizing+cream&udm=28&gl=us&hl=en#product=16245040360969784676&title=CeraVe+Moisturizing+Cream",
        "price": 4.19,
        "currency": "USD",
        "seller": "Target",
        "rating": 4.7
      },
      {
        "rank": 2,
        "productId": "5074307725217910967",
        "title": "CeraVe Moisturizing Cream Pump",
        "url": "https://www.google.com/search?q=cerave+moisturizing+cream&udm=28&gl=us&hl=en#product=5074307725217910967&title=CeraVe+Moisturizing+Cream+Pump",
        "price": 17.99,
        "currency": "USD",
        "seller": "Target",
        "rating": 4.7
      },
      "…"
    ]
  }
}
task.statusstring
QUEUED, PROCESSING, puis COMPLETED avec la réponse ou FAILED avec error.
credits.creditsChargedinteger
Crédits facturés pour la tâche terminée. Une tâche en échec facture 0.
response.returnedCountinteger
Le nombre de produits dans products.
response.productsarray
Les produits dans l’ordre de Google : rank, productId, title, url, price, currency et seller, ainsi que rating, reviewCount et imageUrl quand la fiche les affiche.

Recevoir le résultat

La requête renvoie aussitôt la tâche avec status QUEUED. Interrogez GET /v1/async/task/{id} jusqu’à ce que status vaille COMPLETED ou FAILED, ou ajoutez webhook.url pour recevoir la tâche terminée sur votre serveur, avec les mêmes task, credits et response. Les résultats restent disponibles 24 heures après la fin de la tâche.

curl https://api.querying.ai/v1/async/task/$TASK_ID \
  -H "Authorization: Bearer $QUERYING_API_KEY"

Lire un produit

Passez l’url d’un produit des résultats à COMMERCE_PRODUCT. Voici la lecture du premier produit ci-dessus, raccourcie.

curl -X POST https://api.querying.ai/v1/async/task \
  -H "Authorization: Bearer $QUERYING_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "taskType": "COMMERCE_PRODUCT",
    "payload": {
      "url": "https://www.google.com/search?q=cerave+moisturizing+cream&udm=28&gl=us&hl=en#product=16245040360969784676&title=CeraVe+Moisturizing+Cream"
    }
  }'
taskTypestringObligatoire
Le moteur à interroger, par exemple CHATGPT ou GOOGLE.
payload.urlstringObligatoire
L’url d’un produit issu d’un résultat Commerce Search google_shopping. Elle ouvre la page de résultats et porte l’ID et le titre du produit après #.
JSON
{
  "success": true,
  "task": {
    "id": "9ee619d2-c87f-47ab-93cd-215ef3671734",
    "taskType": "COMMERCE_PRODUCT",
    "status": "COMPLETED",
    "createdAt": "2026-10-23T01:36:00.797Z"
  },
  "credits": { "creditsToCharge": 3, "creditsCharged": 3 },
  "response": {
    "site": "google_shopping",
    "country": "US",
    "url": "https://www.google.com/search?q=cerave+moisturizing+cream&udm=28&gl=us&hl=en#product=16245040360969784676&title=CeraVe+Moisturizing+Cream",
    "productId": "16245040360969784676",
    "title": "CeraVe Moisturizing Cream",
    "price": 4.19,
    "currency": "USD",
    "inStock": true,
    "seller": "Target",
    "rating": 4.7,
    "images": [
      "https://encrypted-tbn3.gstatic.com/shopping?q=tbn:ANd9GcTdoC3RoTxQCkmpSUypL2HqkAR300eBZ_E3W2NCfz2MP4541LroFfQ8ZzNM2XIpm_xS_3c4dZU4_LMYtqQjE89N-Z8wH4Y_gA",
      "…"
    ],
    "specs": [
      { "name": "Benefit", "value": "Moisturizing" },
      { "name": "Form", "value": "Cream" },
      "…"
    ],
    "offers": [
      {
        "seller": "Target",
        "title": "CeraVe Moisturizing Face & Body Cream for Normal to Dry Skin – 1.89 fl oz",
        "url": "https://www.target.com/p/cerave-moisturizing-face-38-body-cream-for-normal-to-dry-skin-8211-1-89-fl-oz/-/A-86467779",
        "price": 4.19,
        "currency": "USD",
        "inStock": true
      },
      {
        "seller": "Ulta Beauty",
        "title": "CeraVe Moisturizing Cream Body and Face Moisturizer - 1.8 oz",
        "url": "https://www.ulta.com/p/moisturizing-cream-body-face-moisturizer-xlsImpprod3530069?sku=2532670",
        "price": 6.99,
        "currency": "USD",
        "inStock": true
      },
      "…"
    ]
  }
}
response.pricenumber
Ce que l’acheteur paie pour le produit tel que la page l’affiche d’abord, avant coupons et livraison, en currency (ISO 4217). listPrice est le prix habituel barré quand il dépasse price.
response.offersarray
Les boutiques que Google liste pour le produit, dans son ordre : seller, title, price, currency et l’url de la page produit de la boutique, ainsi que listPrice et inStock quand la ligne les affiche. La première boutique est le meilleur prix Google.

Erreurs

VALIDATION_ERRORHTTP 422
site est hors des 21 boutiques, query est vide ou dépasse 500 caractères, limit sort de 1 à 40, ou le payload contient un autre champ. details indique le champ.
VALIDATION_ERRORHTTP 422
url est absent, dépasse 2 048 caractères ou sort des pages produit des 18 boutiques, ou le payload contient un champ autre que url et country. details indique le champ.
REGION_UNSUPPORTEDHTTP 422
country diffère du pays de la boutique, par exemple KR avec amazon.
MISSING_API_KEYHTTP 401
L’en-tête Authorization manque, ou sa clé est inconnue, expirée ou révoquée.
INSUFFICIENT_CREDITSHTTP 402
Le solde est inférieur au prix de la tâche. Ajoutez des crédits ou changez de plan, puis renvoyez-la.

Tarif

Chaque recherche terminée et chaque lecture terminée utilisent 3 crédits, comme sur les autres boutiques. Les crédits sont débités à la fin de la tâche.

Autres nouveautés

Recevez les nouveautés

Recevez les mises à jour par e-mail.

Flux RSS