Temu API — Price Check Up to 50 Variants
Documentation menu
FetchLayer FetchLayer API

Check current prices

Check the current price, currency and availability of up to 50 products or variants in one call, all priced for one storefront — built for scheduled price monitoring. Send the skuId with every item. An item with a skuId is a ~1.6KB check that answers in a fraction of a second; an item without one first loads the whole product page (~1.5MB) to find the default variant, which is roughly a thousand times the bytes and several times slower. The variant that was priced comes back as skuId with variantLookedUp true, so store it from your first check and send it on every check after that — it also keeps you tracking the same variant, since a product's default can change. Each item reports status ok, not_found (no such product or variant in that storefront) or failed (Temu refused it this time; retry later). One failed item never fails the others; the whole call is a 503 only when no item could be checked. Billing: each product that gets a definitive result — a price, or a status such as out of stock, ended, unavailable or not found — counts as one request, so pricing 20 products bills 20. Products that fail on our side (blocked, timed out, not reached) are not billed, and duplicates count once.

POST /price-check Products
https://api.fetchlayer.dev/temu/price-check
OpenAPI JSON

Headers

Authorization string required

Bearer token — your FetchLayer API key.

Parameters

items object[] required

Products or variants to price, 1 to 50. Each item is { goodsId, skuId } or { url, skuId }. Always include skuId when you have it: without it the product page is loaded to find the default variant (~1.5MB instead of ~1.6KB).

market string optional

Two-letter country of the storefront to price in. Prices, currency and availability all differ by storefront, and every result is priced for exactly one. One of AE, AT, AU, BG, BR, CA, CH, CL, CO, CZ, DE, DK, DO, DZ, ES, FI, GB, GR, GT, HU, IE, IL, IT, JP, KW, MA, MX, MY, NG, NZ, PE, PY, RO, SA, SE, TH, UA, US, UY, ZA. (default: US)

language string optional

Language for titles and attributes, for example en. Does not change prices. Defaults to the storefront's own language.

format string optional

json or markdown. Markdown returns the same result rendered for a model to read. (default: json)

timeoutMs number optional

Time limit in milliseconds for each call to Temu (max 120000).

Response Fields

price-check

Check current prices

pagesScraped number

Products that received a definitive result. Each counts as one request against your plan; failed products and duplicates do not.

requestedUrl string

The Temu page this result corresponds to.

scrapedAt string

When Temu was read, as an ISO timestamp.

transport string

Always temu — the upstream source this data came from.

notes string[]

Caveats about this specific result, such as a variant list that may be incomplete. Read it before treating a result as complete.

market object

The storefront the result was priced for: code, regionId, currency and language. Every price in the result is in market.currency.

resultType string

Always price-check.

items object[]

One result per requested item, in request order.

items[].goodsId string

Temu product id.

items[].skuId string

The variant that was priced. Store it and send it next time.

items[].status string

ok, not_found (no such product or variant in that storefront), or failed (could not be checked this time — retry it).

items[].price object

Current price: { amount, currency, display } — amount is a decimal (18.39), display is how Temu shows it ($18.39) or null. Null unless status is ok.

items[].availability string

in_stock, out_of_stock, limited_availability, preorder, discontinued or unknown.

items[].variantLookedUp boolean

True when no skuId was sent and the default variant was looked up first — the slow path.

items[].message string

Why there is no price, when status is not ok.

itemCount number

Items requested, with okCount alongside it for the number priced.

Request

curl -X POST "https://api.fetchlayer.dev/temu/price-check" \
  -H "Authorization: Bearer ss-your-key" \
  -H "Content-Type: application/json" \
  -d '{"market":"US","items":[{"goodsId":"607033881415363","skuId":"117585735607558"},{"goodsId":"607033881415363","skuId":"117585735640326"}]}'

Response

{
  "blocked": false,
  "requestedUrl": "https://www.temu.com/",
  "scrapedAt": "2026-09-12T22:19:56.843Z",
  "transport": "temu",
  "notes": [],
  "resultType": "price-check",
  "market": {
    "code": "US",
    "regionId": 211,
    "currency": "USD",
    "language": "en"
  },
  "items": [
    {
      "goodsId": "607033881415363",
      "skuId": "117585735607558",
      "status": "ok",
      "price": {
        "amount": 18.39,
        "currency": "USD",
        "display": null
      },
      "availability": "in_stock",
      "url": "https://www.temu.com/soft-plush-and-pointed-bottom-home-decor-orange-blue-retro-floral-pattern-all-match-decorative-style-suitable-for-various-home-decorations-can-be-used-as-living-room-carpet-sofa-carpet-door-mat-bedroom-carpet-kitchen-carpet-g-607033881415363.html?sku_id=117585735607558",
      "variantLookedUp": false,
      "message": null
    },
    {
      "goodsId": "607033881415363",
      "skuId": "117585735640326",
      "status": "ok",
      "price": {
        "amount": 28.99,
        "currency": "USD",
        "display": null
      },
      "availability": "in_stock",
      "url": "https://www.temu.com/soft-plush-and-pointed-bottom-home-decor-orange-blue-retro-floral-pattern-all-match-decorative-style-suitable-for-various-home-decorations-can-be-used-as-living-room-carpet-sofa-carpet-door-mat-bedroom-carpet-kitchen-carpet-g-607033881415363.html?sku_id=117585735640326",
      "variantLookedUp": false,
      "message": null
    }
  ],
  "itemCount": 2,
  "okCount": 2
}