AliExpress API — Product Details, Variants and Stock
Documentation menu
FetchLayer FetchLayer API

Get one product in full

Everything AliExpress publishes for one product: title and category path, the lowest and highest current price across variants, the original price, discount and 30-day lowest price, every variant (SKU) with its options, price, availability and stock, total stock and purchase limit, the store with its country, opening date, positive-feedback share and top-rated status, rating, review count, sold and wishlist counts, specifications, images and video, and the shipping option AliExpress selects by default for the market — carrier, fee, ship-from country and delivery dates. Accepts a product id or any product page URL, including US storefront ids; the id returned is always the global one. AliExpress refuses product lookups in bursts, and this route depends on them: an occasional 503 is temporary, so wait a little and retry. Search, category listings and reviews are served another way and are not affected. A 404 means the product does not exist or is not public and is not worth retrying.

POST /product-details Products
https://api.fetchlayer.dev/aliexpress/product-details
OpenAPI JSON

Headers

Authorization string required

Bearer token — your FetchLayer API key.

Parameters

product string required

AliExpress product id or any product page URL.

shipTo string optional

Two-letter country code the shopper ships to, for example US or DE. Changes prices, shipping and availability. (default: US)

currency string optional

Currency prices are returned in: USD, EUR, GBP, CAD, AUD, NZD, BRL, MXN, CLP, COP, PEN, ARS, JPY or KRW. Any other value is a 400. (default: USD)

language string optional

Language for titles and labels: en_US, de_DE or pt_BR. Any other value is a 400. (default: en_US)

format string optional

json, or markdown to get the result rendered as text. (default: json)

timeoutMs number optional

Per-request time limit in milliseconds (max 600000).

Response Fields

product-details

Get one product in full

product.productId string

Global product id.

product.title string

Title, in the requested language.

product.url string

Public product page URL.

product.available boolean

Whether it can be bought in this market.

product.categoryId string | null

Leaf category id.

product.categoryPath object[]

Category breadcrumb, top level first.

product.price object | null

Lowest current price across variants: amount, currency and as displayed.

product.priceMax object | null

Highest current price across variants.

product.originalPrice object | null

The default variant's price before its discount.

product.discountPercent number | null

Discount on the default variant.

product.thirtyDayLowestPrice string | null

The 30-day lowest price before the discount, as displayed, where AliExpress shows one.

product.variantProperties object[]

Option dimensions (Color, Size…) with each option’s name and image.

product.variants object[]

Every SKU: skuId, selected options, price, available and stock. Pass a skuId to /product-prices to track one variant.

product.selectedSkuId string | null

The variant AliExpress selects by default.

product.totalStock number | null

Units in stock across variants.

product.purchaseLimit string | null

Per-order limit, as displayed.

product.store object

storeId, sellerId, name, url, country, openedOn, positiveFeedbackPercent (0–100), feedbackCount, topRatedSeller and highlights.

product.rating number | null

Average rating out of 5.

product.reviewCount number | null

Reviews on the product.

product.soldText string | null

Sales label as displayed.

product.soldCount number | null

Sales count.

product.wishlistCount number | null

Shoppers who saved it.

product.specifications object[]

Specification name/value pairs.

product.imageUrls string[]

Gallery images. Pass one to /media to download it.

product.videoUrl string | null

Product video, when there is one.

product.descriptionUrl string | null

URL of the seller’s long description.

product.shipping object | null

The default shipping option for the market: carrier, fee (null when free), free, shipFrom, deliveryDaysMin/Max, estimatedDeliveryFrom/To (yyyy-mm-dd), trackingAvailable and freeShippingThreshold.

market object

The market this result was read in — shipTo, currency and language — after defaults were applied. Compare prices only between results with the same market.

notes string[]

Caveats about this specific result — a walk refused part-way, a padded search, a page repeated by the cursor. Read it before treating a result as complete.

requestedUrl string

The AliExpress page this result corresponds to.

scrapedAt string

ISO 8601 timestamp of when the data was collected.

resultType string

Which shape this response is, e.g. product-search or product-reviews.

transport string

The upstream source the data came from: aliexpress.

blocked boolean

Always false on a successful response.

Request

curl -X POST "https://api.fetchlayer.dev/aliexpress/product-details" \
  -H "Authorization: Bearer ss-your-key" \
  -H "Content-Type: application/json" \
  -d '{"product":"1005009494458560","shipTo":"US","currency":"USD","language":"en_US"}'

Response

{
  "resultType": "product-details",
  "market": {
    "shipTo": "US",
    "currency": "USD",
    "language": "en_US"
  },
  "notes": [],
  "product": {
    "productId": "1005009494458560",
    "title": "AJAZZ NK61 Wired Gaming Mechanical Keyboard 60% RGB Hot-Swappable 61 Keys Red Switch Mini Keyboard for Gamer PC",
    "url": "https://www.aliexpress.com/item/1005009494458560.html",
    "available": true,
    "categoryId": "70802",
    "price": {
      "amount": 16.33,
      "currency": "USD",
      "formatted": "US $16.33"
    },
    "originalPrice": {
      "amount": 41.14,
      "currency": "USD",
      "formatted": "US $41.14"
    },
    "discountPercent": 60,
    "rating": 4.7,
    "reviewCount": 2708,
    "soldText": "10,000+ sold",
    "variantProperties": [],
    "variants": [],
    "store": {},
    "specifications": [],
    "shipping": {}
  }
}