API

AliExpress API : fiches produit et prix en euros, en JSON

Les API officielles d'AliExpress (Affiliate, Dropshipping) s'adressent aux affiliés et aux vendeurs inscrits chez AliExpress. Ici, on lit le côté acheteur : la fiche publique telle qu'un client en France la voit, avec le prix en euros, les variantes, la livraison et les avis, rendue en JSON. Trois paramètres fixent le marché et sont indépendants les uns des autres : `country` (pays de livraison), `currency` et `language`.

Endpoints

endpointCe qui est renvoyéObligatoires
searchRecherche par mot-clé : prix, prix barré, remise, nombre de ventes, note. Filtres prix minimum et maximum, pays d'expédition, livraison gratuite ; tri par pertinence, commandes, prix ou nouveauté.query
product_detailLa fiche complète par `product_id` ou URL : prix et stock de chaque variante (SKU), caractéristiques, images, vidéo, boutique, livraison vers le pays demandé, note, coupons, et le poids quand le vendeur l'a publié.tous optionnels
reviewsLes avis acheteurs, plusieurs pages en un seul appel, avec la répartition des notes ; filtre possible sur les avis avec photo.tous optionnels
similarDes produits proches d'un article donné (l'article lui-même exclu), ou à partir de mots-clés.tous optionnels
descriptionLa description longue rédigée par le vendeur : texte et images.tous optionnels
shippingLes options de livraison vers le pays demandé : transporteur, coût, délai.tous optionnels
store_infoLe profil d'une boutique ; si l'on ajoute un mot-clé qu'elle vend, ses indicateurs vendeur (score, taux d'avis positifs, nombre d'avis).tous optionnels
dealsLes articles en promotion pour un mot-clé, classés par remise, avec un seuil de remise minimum en option.query

Chaque appel est facturé en crédits. Les appels en échec ou bloqués sont gratuits.

Exemple qui fonctionne

C'est sur la fiche produit que l'on obtient le titre en français et les noms de variantes (« Couleur », « Modèle mobile »). Renseignez aussi `province` : sans région de destination, le bloc `shipping` peut revenir vide (voir plus bas).

Requête
curl -X POST https://api.reefapi.com/aliexpress/v1/product_detail \
  -H "x-api-key: VOTRE_CLE" \
  -H "content-type: application/json" \
  -d '{"product_id": "1005009463232289", "country": "FR", "currency": "EUR", "language": "fr", "province": "Ile-de-France"}'
Réponse (abrégée)
{
  "ok": true,
  "data": {
    "product": {
      "product_id": "1005009463232289",
      "title": "Coques de téléphone en TPU ultra-fines et transparentes pour iPhone 18 17 16 15 14 13 12 11 Pro Max Plus Air 16E XR XS Max, coque en silicone transparente",
      "price_min": 2.27,
      "price_max": 3.29,
      "currency": "EUR",
      "rating": 4.7,
      "review_count": 2976,
      "sold_count": null,
      "sold_text": "+ 10 000 vendus",
      "sku_variants": [
        {
          "sku_id": "12000049183381385",
          "props": { "Couleur": "Clear", "Modèle mobile": "IPhone 16 Pro Max" },
          "price": { "sale": 2.89, "sale_str": "2,89€", "currency": "EUR" },
          "stock": 14,
          "available": true
        },
        ...
      ],
      "shipping": {
        "ship_to": "FR",
        "shipping_cost": 0.0,
        "free": true,
        "delivery_estimate": "5-9 days",
        "delivery_eta": "28 oct.",
        "ship_from": "China",
        "lines": ["Suivi disponible"]
      },
      "store": { "name": "Shop1102861803 Store", "seller_positive_rate": 93.6, "seller_feedback_count": 11487 }
    }
  },
  "meta": { "record_count": 1, "variant_count": 35, "country": "FR", "currency": "EUR", "language_sent": "fr", "province_sent": "Ile-de-France", "cache_hit": false, "mode": "live" }
}

Avant d'écrire votre propre scraper AliExpress

Sur AliExpress, le pays de livraison ne se règle pas là où on l'attend. Sur l'interface interne de la fiche produit, c'est la partie pays du code de langue (`fr_FR`, `en_US`…) qui fixe la destination, pas le champ `country`. Un scraper qui change seulement `country` récupère sans le savoir les prix et les délais d'un autre pays.

Deuxième piège, mesuré : sans région de destination, une partie des articles passe en « ne peut pas être livré à votre adresse » et tous les champs de livraison reviennent vides, alors que le même article affiche la livraison gratuite dans le navigateur. C'est la raison d'être du paramètre `province`.

Enfin, AliExpress répond au trafic qu'il juge suspect par une page de vérification au lieu des données. Ce cas est géré dans le moteur ; si l'appel échoue malgré tout, vous recevez un code d'erreur et il n'est pas facturé.

Pour récupérer quelques fiches une fois, un script maison fait l'affaire. Pour suivre des prix en euros semaine après semaine, ce sont ces détails qui coûtent, bien plus que le code.

Limites et remarques honnêtes

  • Ce n'est pas l'API officielle d'AliExpress et nous n'avons aucun partenariat avec AliExpress.
  • Dans nos mesures du 24 octobre 2026, les résultats de `search` sont revenus avec le titre en anglais malgré `"language": "fr"` (trois recherches, aucun titre en français). Le titre français arrive avec `product_detail`.
  • Sur notre fiche en français, `sold_count` est revenu à null alors que `sold_text` affichait « + 10 000 vendus » : dans ce cas, lisez `sold_text`.
  • Sur les résultats de recherche, `store_name` et `store_url` sont null : AliExpress ne les publie plus à cet endroit. La boutique se trouve dans `product_detail`.
  • La pagination a une limite côté AliExpress : la page 60 est la plus lointaine que nous ayons pu obtenir, et la page 100 revient vide. Avancez tant que `meta.pagination.has_more` est vrai.
  • Les réponses ne sont pas mises en cache : prix et stocks sont ceux qu'AliExpress affiche à l'instant de l'appel.