Temu prices, by variant.
In the country you pick.
Read a Temu product once — price, discount, running promotion, images, specifications and every variant's skuId — then check up to 50 variants per call, each priced for one of 40 country storefronts. Three endpoints, on purpose: products, prices and URL parsing. No Temu account.
Temu keeps search and reviews from anonymous visitors, so this API does not offer them. It reads products and prices, and says so in every response.
Trusted by developers shipping real products.
247,095 served today
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"}]}'
Response
{
"market": { "code": "US", "currency": "USD" },
"items": [{
"skuId": "117585735607558",
"status": "ok",
"price": { "amount": 18.39, "currency": "USD" },
"availability": "in_stock",
"variantLookedUp": false
}],
"okCount": 1,
"notes": []
} Built for feedback workflows
Fetch the public signal. Use it wherever your team works.
Prices per variant
Not just a headline price: the current price, pre-promotion price, list price and discount, plus each listed variant’s own price, availability and color, size or material — with the skuId you need to track it.
Pinned to one storefront
Forty country storefronts, each in its own currency. Every result states the market it was priced for, and an answer rendered for the wrong country fails instead of slipping into your data.
Built for scheduled checks
Up to 50 items per price check. Send the skuId and each item is about 1.6KB and a fraction of a second; the check returns the skuId it priced, so the first run teaches every run after it.
Links in, ids out
Paste any Temu URL into /resolve-url and get the goodsId, selected skuId and storefront back without touching Temu — and without spending a credit.
Gaps stated, not hidden
Every response carries a notes array: a variant list that may be incomplete, availability that could not be checked. Search and reviews are not offered at all rather than half-working.
AI-ready JSON and MCP
Hand an agent temu_product and temu_price_check and it can price a list of links in the storefront you name — typed prices with amount and currency, no HTML parsing.
Paste the Temu links. Get a price table back.
Prefer not to write code? Give FetchLayer Research Chat the Temu products you track and the country you sell in, and get every variant priced, compared and ready to drop into your pricing sheet.
- ✓Ask questions in plain English
- ✓Analyze themes, sentiment, and pain points
- ✓Download the structured results as CSV or JSON
No code or setup required · Uses your FetchLayer credits
Here are five Temu product links. Price every variant in the UK storefront, flag anything on a promotion ending this week, then export it as CSV.
I read all five products and priced their 23 listed variants in GBP. Seven are on a promotion, three of which end within the week. Two products list only their default variant, so their other variants fall inside the price range shown.
temu-variant-prices.csv
23 variants · 9 columns · ready to download
Solutions
Build the workflow around the feedback.
Price it on Amazon too
Check the same products on Amazon marketplaces, with search, in the same JSON shape.
Explore →Compare with storefronts
Read a Shopify store’s catalogue and variant prices to see how a Temu listing compares.
Explore →Read the reputation
Temu product reviews are not available — Trustpilot’s public reviews of sellers and stores are.
Explore →From raw feedback to action
One request is the start of the workflow.
Store the structured response, run it on a schedule, pass it to an LLM, or feed it into the system your team already uses. FetchLayer handles retrieval so you can focus on the outcome.
- 01
Turn links into ids
Run the Temu URLs you track through /resolve-url for their goodsId, skuId and storefront. Free, and no request to Temu.
- 02
Read each product once
Call /product for the price, promotion, images and specs, and keep the skuId of every variant you care about.
- 03
Check prices on a schedule
Batch up to 50 skuIds per /price-check, retry failed items after a short wait, and store the price history Temu never shows you.
MCP & agents
Your AI already knows
how to use this.
Use the Temu endpoint directly from your MCP-compatible agent. Ask it to retrieve public feedback, identify patterns, and turn the result into a useful brief without writing integration glue.
Pick your editor and we hand you the config with your key already in it — no JSON to hand-edit, no wrapper code.
Get your free API keyFree tier · no credit card · any MCP host
Check today's US price for these twelve Temu variants and flag anything on a promotion that ends this week.
Priced all twelve variants in one call, in USD. Five are on a promotion, two of which end on Sunday, and one variant is out of stock.
Works with every MCP-compatible tool
Use cases
What teams build with Temu price data.
A small API with a clear job: know what a Temu product costs, per variant, in the country that matters to you.
Price monitoring
Check up to 50 variants per call on a schedule. Send each skuId and every check is about 1.6KB, not a 1.5MB page.
AI agent context
Give Claude, Codex, or your MCP agent a Temu link and get back the live price, discount and every variant.
Cross-border pricing
Price the same product in the US, UK, Germany or Japan storefront, each in its own currency, never mixed up.
Promotion tracking
Read the running promotion, its end time and the pre-sale price to see how deep and how long Temu discounts.
Sourcing comparison
Put a Temu product next to the same item on Amazon or a Shopify store to compare what the same thing costs.
Link enrichment
Turn pasted Temu links into product and variant ids for free, then enrich them with titles, images and specs.
Compare approaches
Spend time on the insight, not the collection layer.
| What you need | FetchLayer | Official API | Build it yourself |
|---|---|---|---|
| Public product and price data | ✓ | No public product API | You build it |
| Priced for the country you choose | ✓ | n/a | You pin it |
| Wrong-country answers rejected | ✓ | n/a | You check it |
| Lightweight per-variant price checks | ✓ | n/a | You find the route |
| Ready for AI and MCP workflows | ✓ | Your integration | Your integration |
FetchLayer provides access to publicly available data. It is not affiliated with, endorsed by, or sponsored by the platform.
Pricing
Start free. Scale when ready.
Pay per request with no commitment, or lock in a flat monthly rate with built-in savings.
Free plan — 30 requests
Verify responses, inspect the API, no credit card required.
Pay as you go
$1.99
per 1,000 requests
$0.00199 per request · credits never expire
How credits work — no multipliers
One credit = one API call, on every endpoint and platform. No matter how many results come back, you pay for the call, not the output size. Most scraping APIs charge multipliers of 5x, 25x, even 75x per call depending on the target — here it's always 1.
- No multipliers — 1 request = 1 credit
- No monthly commitment
- Credits never expire
- Same API & MCP access as subscribers
- ∞ req/min, ∞ API keys
∞
Expiry
Credits stay until you use them. No monthly reset, no pressure to hit a quota.
0
Commitments
No subscription, no contract, no minimums. Start, pause, or scale whenever.
100%
Access
Every endpoint and MCP included. Not a limited tier — same data as any subscriber.
API reference
Every parameter, documented.
All requests are POST with a JSON body and Bearer auth header.
POST /temu/product One product in full, priced for one storefront: price, pre-promotion and list price, discount, price range, the running promotion and its end time, images, video, specifications, and every listed variant with its skuId, price, availability and attributes.
product* string Temu product id, or any Temu product URL market string Two-letter storefront country, e.g. US, GB, DE, JP. Defaults to US. includeVariantAvailability boolean Check each variant's own price and stock (up to 20). Defaults to true; false answers faster. format string 'json' | 'markdown'. Defaults to json. POST /temu/price-check Current price and availability for up to 50 products or variants in one call. Send the skuId with every item: that makes each check about 1.6KB instead of a 1.5MB product page. Each item reports ok, not_found or failed, and one failure never fails the rest.
items* object[] 1–50 of { goodsId, skuId } or { url, skuId }. Always include skuId when you have it. market string Two-letter storefront country. Defaults to US. format string 'json' | 'markdown'. Defaults to json. POST /temu/resolve-url Parse any Temu URL into its goodsId, skuId, store, category, search terms and storefront country. Touches no Temu page, and never consumes a credit.
url* string Any Temu URL Fields marked * are required. Full API reference →
FAQ
Common questions.
Can I search Temu or read its reviews?
No. Temu does not make keyword search or product reviews available to anonymous visitors, so this API does not offer them rather than serve them unreliably. Star ratings, sold counts, shipping costs, delivery estimates and stock quantities are not available either. What it does offer is products and prices: start from product ids or Temu links you already have, and /resolve-url turns any link into the ids the other endpoints take.
Why should I send a skuId to the price check?
Because it is the difference between about 1.6KB and about 1.5MB per item. A /price-check item that names its variant is a small, fast check that answers in a fraction of a second. An item without one first loads the whole product page to find the default variant. Every /product response lists the skuIds, and every price check returns the skuId it priced, so store it once and send it every time after — it also keeps you tracking the same variant if Temu changes its default.
Which countries and currencies are supported?
Forty Temu storefronts, including the US, UK, Canada, Australia, Germany, Spain, Italy, Japan, Mexico, Brazil and the UAE. Pass market and every price in the response is in that storefront’s currency. Results are never silently priced for another country: if Temu answers for the wrong storefront, the request fails with a 502 rather than returning, say, Canadian dollars for a US check.
What does a product lookup return?
Title and URL, the default variant’s current price, the price before the running promotion, the strikethrough list price, the discount, the lowest and highest variant price, the promotion and when it ends, the image gallery, the video, the specification table and category ids — plus the listed variants, each with its skuId, price, availability and attributes. Temu publishes each variant’s own price only while a promotion runs; for other products the default variant is listed and the notes array says so.
How tight are the rate limits, and what should I retry?
Tight — Temu refuses bursts of requests. A 503, a 502, or a price-check item with status failed is worth retrying after a short wait. A 400 (bad input, including an unrecognised field) or a 404 (the product does not exist or is not sold in that storefront) will not change on retry. Batch variants into one price check of up to 50 items rather than firing many single-item calls.
Do I need a Temu account?
No. There is no Temu account, seller login or affiliate credential involved — one FetchLayer key reads public product data in every supported storefront. FetchLayer is not affiliated with, endorsed by, or sponsored by Temu.
How does billing work?
One API request equals one credit, the same as every other FetchLayer platform. On /price-check each product or variant priced counts as one request, with or without a skuId — skuId makes the check faster and lighter, not cheaper. An item that fails on our side is not billed. Parsing a URL with /resolve-url touches no Temu page and is free. Temu is in Beta.
Start pulling Temu product data today.
Get a free API key, make your first request, and put public feedback to work in your own product or research workflow.
Used by developers at
Individual developers or teams — not official partnerships