Shopping · Otto

API de recherche Otto

L’API de recherche Otto vous fournit des données Otto en direct au moment où vous les demandez, sous une forme propre et structurée – prêtes pour votre application, un tableur ou un assistant IA. Sans scraping, rien à maintenir.

100 requêtes gratuites chaque mois · sans carte bancaire · une clé API pour toutes les plateformes

L’essentiel

Mis à jour le

Une recherche "Highboard" sur otto.de renvoie plusieurs milliers de produits répartis sur plus de deux cents pages, mêlés à des emplacements sponsorisés, avec un classement différent selon que l'acheteur trie par meilleures ventes, par prix ou par nouveauté. L'API de recherche Otto d'everydata.io vous fournit ces pages de résultats en JSON structuré – un appel par page, avec l'ordre de tri de votre choix – pour suivre des classements, découvrir de nouvelles annonces ou établir des statistiques de prix par catégorie sans afficher la boutique.

Plateforme
Otto
Endpoint principal
/otto-search-by-keyword
Quota par appel
2 requêtes
Offre gratuite
100 req. / moispuis à partir de 30 € / mois
Ce que vous obtenez

Ce que renvoie l’API de recherche Otto

Chaque réponse commence par les métadonnées de la recherche : keyword et sortStrategy reprennent votre requête, resultCount est le nombre total de résultats indiqué par otto.de, numberOfProducts le nombre d'articles sur la page, et nextPage / lastPage pilotent votre boucle de pagination. Une recherche Highboard renvoie par exemple 120 produits en page un, sur 5 166 au total répartis sur 56 pages.

searchProductDetails est la liste des résultats. Chaque entrée contient productDescription (le titre de l'annonce), manufacturer, productId et le variationId choisi par Otto pour la vignette, price et retailPrice en EUR, productRating et countReview, imgUrl, dpUrl (le chemin relatif du produit avec ?variationId=), deliveryMessage comme "lieferbar - in 2-3 Werktagen bei dir", un booléen sponsored et un tableau variations listant les variationId des déclinaisons et leurs libellés, par exemple "Weiß | Korpus : Weiß".

  • keyword, sortStrategy, resultCount, numberOfProducts, nextPage et lastPage pour une pagination déterministe
  • Par produit : productDescription, manufacturer, productId, variationId, dpUrl et imgUrl
  • price et retailPrice en nombres : une soustraction suffit pour calculer la remise sur la page de résultats
  • productRating et countReview pour filtrer les articles bien notés
  • deliveryMessage et sponsored pour distinguer les résultats organiques des emplacements payants
  • variations[] avec variationId et valeur pour chaque couleur ou taille affichée par Otto sur la vignette
  • sortBy : topseller (par défaut), preis-aufsteigend, preis-absteigend, neuheiten, bewertung
Cas d’usage

Ce que les équipes construisent avec l’API de recherche Otto

Suivi du positionnement par mot-clé

Enregistrez chaque matin la position de votre productId sur vos termes principaux avec sortBy=topseller, distinguez les emplacements sponsorisés des organiques et soyez alerté lorsqu'un concurrent passe devant vous.

Découverte des nouvelles annonces

Interrogez un terme de catégorie avec sortBy=neuheiten et comparez les productId à ceux de la veille pour repérer en quelques heures les nouveaux articles, nouvelles marques ou nouvelles variantes de couleur.

Analyse des gammes de prix

Parcourez une recherche avec preis-aufsteigend et preis-absteigend pour trouver les offres les moins chères et les plus chères d'un type de produit, puis calculez le prix médian et la profondeur des remises à partir de price et retailPrice.

Audits des emplacements sponsorisés

Les agences comptent les vignettes sponsorisées par page et par mot-clé pour mesurer combien d'inventaire payant Otto vend sur un terme et quelles marques l'achètent.

Alimenter des crawls de produits

Utilisez la recherche comme point d'entrée pour collecter les dpUrl de toute une catégorie, puis transmettez-les à l'endpoint produit pour obtenir caractéristiques, images et matrice complète des variantes.

Comment ça marche

API de recherche Otto : exemple de requête et de réponse

Appelez GET /ott/otto-search-by-keyword avec keyword et page ; les deux sont obligatoires. Ajoutez sortBy pour reproduire l'ordre de tri d'un acheteur – les valeurs sont les clés de tri allemandes d'Otto. La page un avec l'ordre topseller par défaut correspond à ce que voit un visiteur après avoir saisi le terme dans le champ de recherche d'otto.de.

GET /ott/otto-search-by-keyword

curl "https://api.everydata.io/ott/otto-search-by-keyword?keyword=highboard&page=1&sortBy=topseller" \
  -H "x-api-key: YOUR_API_KEY"

Réponse (abrégée)

200 OK · application/json
{
  "responseStatus": "PRODUCT_FOUND_RESPONSE",
  "responseMessage": "Product successfully found!",
  "sortStrategy": "topseller",
  "domainCode": "de",
  "keyword": "highboard",
  "numberOfProducts": 120,
  "resultCount": 5166,
  "nextPage": 2,
  "lastPage": 56,
  "searchProductDetails": [
    {
      "productDescription": "LeGer Home by Lena Gercke Highboard Essentials, Sideboard, Kommode, Anrichte, Schrank, Stauraumschrank, Breite: 111 cm, UV lackiert, Push-to-open-Funktion",
      "manufacturer": "LeGer Home by Lena Gercke",
      "productId": "1658198337",
      "variationId": "2081559634",
      "countReview": 1,
      "imgUrl": "https://i.otto.de/i/otto/5ce00b97-95ba-5927-9915-35aaa2278456?$responsive_ft2$",
      "price": 869.99,
      "retailPrice": 1109.99,
      "productRating": "1.0",
      "dpUrl": "/p/leger-home-by-lena-gercke-highboard-essentials-sideboard-kommode-anrichte-schrank-stauraumschrank-breite-111-cm-uv-lackiert-push-to-open-funktion-1658198337/?variationId=2081559634",
      "deliveryMessage": "lieferbar - in 2-3 Werktagen bei dir",
      "sponsored": true,
      "variations": [
        {
          "variationId": "2081559598",
          "value": "Weiß | Korpus: Weiß"
        },
        {
          "variationId": "2081559615",
          "value": "Kaschmir | Korpus: Kaschmir"
        }
      ]
    }
  ]
}
API de recherche Otto : champs de l’exemple de réponse de /ott/otto-search-by-keyword
API de recherche Otto : champs de l’exemple de réponse de /ott/otto-search-by-keyword

dpUrl est relatif – préfixez-le par https://www.otto.de pour obtenir une URL à passer directement à GET /ott/otto-lookup-product. Le variationId de la chaîne de requête est l'article affiché par Otto sur la vignette ; remplacez-le par l'un des identifiants de variations[] pour ouvrir une autre couleur. La pagination profonde fonctionne, mais un resultCount de plusieurs milliers nécessite rarement toutes les pages : pour le suivi de classement, les trois premières pages couvrent ce que les acheteurs parcourent réellement.

Les vignettes de résultats ne contiennent ni shippingPrice ni quantité en stock ; ces informations figurent sur la page produit. Considérez l'endpoint de recherche comme la couche de découverte et l'endpoint produit comme la couche de détail, et mettez les pages de recherche en cache avec withCache lorsque vous crawlez le même terme plusieurs fois par jour.

sortStrategy dans la réponse confirme l'ordre réellement appliqué par otto.de. Si vous passez une valeur de sortBy inconnue, Otto revient à son ordre par défaut et le champ vous l'indique.

Endpoints associés

GET/ott/otto-search-by-keyword

Rechercher des produits. Recherche par mot-clé avec pagination : titre, prix, note et image par produit.

GET/ott/otto-lookup-product

Détails du produit. Page produit par URL. Temporairement indisponible (protection anti-bots d'otto.de) : renvoie 502 et n'est pas facturé.

GET/ott/otto-lookup-reviews

Avis. Avis paginés d'un produit.

Référence complète de l’API
Tarifs

Tarifs de l’API de recherche Otto : payez à la requête

Chaque page de recherche compte pour une requête, quelle que soit sa taille – les vignettes Otto vont de 24 à 120 produits par page selon le terme. Suivre chaque jour 50 mots-clés sur leurs trois premières pages demande environ 4 500 requêtes par mois, ce qui tient dans l'offre Starter (30 €). withCache permet aux recherches répétées d'un même terme de partager une seule récupération côté source.

Free
100 req. / mois
Starter
5 000 req. · 30 €
Production
50 000 req. · 80 €
Business
300 000 req. · 300 €

API de recherche Otto : questions fréquentes

Quelles valeurs de sortBy sont prises en charge ?

topseller (par défaut), preis-aufsteigend, preis-absteigend, neuheiten et bewertung – les mêmes clés que le menu de tri d'otto.de. L'ordre appliqué est repris dans sortStrategy.

Combien de résultats une page contient-elle ?

numberOfProducts vous l'indique à chaque réponse ; otto.de affiche généralement entre 24 et 120 vignettes selon la catégorie et la mise en page de l'appareil. Utilisez nextPage et lastPage pour itérer plutôt que de supposer une taille de page fixe.

Puis-je filtrer par marque, couleur ou gamme de prix ?

L'endpoint n'accepte que keyword, page et sortBy. Ajoutez la marque au mot-clé ("Vladon Highboard") pour une recherche limitée à une marque, et filtrez le prix ou manufacturer côté client à partir des champs renvoyés.

Les produits sponsorisés sont-ils inclus ?

Oui, ils apparaissent dans la liste exactement là où otto.de les affiche et portent sponsored : true. Filtrez-les si vous voulez le classement organique.

La recherche renvoie-t-elle le stock ou les frais de port ?

Elle renvoie deliveryMessage pour chaque vignette, qui indique la disponibilité et le délai de livraison, mais pas shippingPrice ni les quantités. Appelez l'endpoint produit sur dpUrl pour les obtenir.

Lancez votre première recherche otto.de

Créez un compte gratuit et récupérez une page de résultats en JSON en moins d'une minute – sans automatisation de navigateur, sans proxy.