Shein API

Get Shein product search, prices and details with one API

Shein API returns live Shein data as clean JSON for shein The primary endpoint, search, returns matching records including goods id, name, price, list price and discount pct.

no credit card1,000 free credits · instant API key · pay by card or crypto
Missing a Shein endpoint, or need a source we don't have yet?Contact us real people · same-day reply.
S
/shein/v1

4 active endpoints, on 1, 2 and 4 credit tiers.

  • POST/shein/v1/search
  • POST/shein/v1/product/detail
  • POST/shein/v1/price
  • POST/shein/v1/category/browse

What Shein endpoints does ReefAPI ship?

4 live read endpoints. Read-only data API: no writes, no account actions, no dashboard access on the target site.

4 endpoints

search

4 cr

Return JSON product cards from the selected storefront with local prices, currency and produc…

required
query
optional
market, max_results, page, limit, category_id

product/detail

4 cr

Read a complete selected regional product page in its local currency, by product id or URL.

required
—
optional
market, url, fields, exclude

price

2 cr

Read current price and stock from the selected regional product page in its local currency.

required
—
optional
market, url

category/browse

1 cr

Shein refuses its category shelf for API clients, so this action reports that plainly instead…

required
category_id
optional
market, url, page, limit

Every parameter, every allowed value →

Shein API

3 of 4 endpoints, ready to run

View docs ↗

Search the global storefront through JSON for up to 40 product cards on the first page. Cards include names, prices, images and available ratings. US search also supports pagination.

4 credits1 required · 3 optional
POST/shein/v1/search
idle
// Press "Try it" and this pane shows exactly what the
// live site returned this second — including an empty
// result, if that is the truth. No key, no account.

How the Shein API works

Shein is a normal ReefAPI surface — the same four rules that hold for every other engine on the key.

01
Authenticate
x-api-key header

No OAuth app, no request signing, no per-site account. One key covers all 530 engines.

02
Call
POST /shein/v1/…

Every route is a POST with a JSON body. Parameters are validated against the published schema before anything is charged.

03
Pay
1 or 2 or 4 credits per call

Verified SHEIN NOT_FOUND responses on product/detail and price cost 4 credits; timeout, blocked and capacity errors remain free.

04
Read
{ ok, data, meta, error }

One envelope everywhere. meta carries latency_ms, record_count and the endpoint that answered.

Search globally, then retrieve the full product

Search returns product cards. Use product/detail with the same market when you need SKU prices, sizes and the other fields published on the product page.

01search
POST/shein/v1/search
{"query": "summer dress", "market": "global", "limit": 40}

Read results[]. Global currently supports page 1 only. source_has_more reports additional source matches; pagination_supported=false means this API cannot fetch those later global pages yet.

02detail
POST/shein/v1/product/detail
{"goods_id": "25707672", "market": "global"}

Full sizes and published SKU data are included without deep:true. Use price when you only need money and availability fields.

Search and product/detail each cost 4 credits per successful call. See the endpoint reference for other action prices. Verified SHEIN NOT_FOUND responses on product/detail and price cost 4 credits; timeout, blocked and capacity errors remain free.

request
curl -X POST https://api.reefapi.com/shein/v1/search \
  -H "x-api-key: $REEF_KEY" \
  -H "content-type: application/json" \
  -d '{"query":"summer dress","max_results":20}'
response envelope
{
  "ok": true,
  "data": { … },
  "meta": {
    "api": "shein",
    "endpoint": "search",
    "mode": "live",
    "latency_ms": …,
    "record_count": …
  },
  "error": null
}

Storefront coverage and data limits

Global means www.shein.com, not guaranteed availability in every delivery country. Product and offer availability depend on the storefront and destination.

Market default

global. An explicit market overrides the URL. Without market, a www.shein.com URL selects global and a us.shein.com URL selects US. An id-only request selects global. Product/detail and price accept global, us, uk, de, fr, es, it, nl, pl, pt, se, tr, sa, ae and kw; search accepts global, us, sa, ae and kw.

Prices

Decimal amounts in the storefront currency from the product-page offer: USD for global and US, GBP, EUR, PLN, SEK, TRY, and SAR, AED or KWD for the Gulf. Saudi Arabia, the UAE and Kuwait share the ar.shein.com catalog; AED and KWD are SHEIN's own conversions and product names come in Arabic. Product/detail and price do not issue additional price lookup requests when the product price is missing. Values may change between reads.

Global search

JSON first page only, default and maximum 40 results. Fewer cards may be returned when the source serves fewer valid matches. page>1 or a request for more than 40 returns INVALID_PARAM. US search retains pagination. has_next=false for global is an API limit, not proof that SHEIN has no more matches; check source_has_more.

Sizes and stock

All published SKUs and available size charts are included by default. Unavailable global SKU prices are null and sku_prices_complete=false; the product price is never copied to each size. Stock values are what SHEIN publishes.

Description and attributes

Returned when published by the source. Search cards do not contain the full SKU or description data.

Missing offer price

An unavailable global product price returns UPSTREAM_HTTP with error.detail.reason=global_offer_price_unavailable, without additional price lookup requests. A zero placeholder is never reported as a free global product.

Unavailable products

A recognized product-not-found page returns NOT_FOUND. This applies to the selected storefront; the item may still exist elsewhere.

Latency and retries

Global JSON search starts a fresh session and can take tens of seconds. Product retrieval can be faster with an available session. Unknown global SKU prices are explicitly null; required product and stock data must still pass validation. Inspect error.retryable: product-not-found and unavailable-price outcomes are not repeatedly retried inside the call; transient failures can be retried.

Weight and dimensions

No inferred product weight or package dimensions. Optional fields depend on what the source publishes.

What people build with Shein

The jobs this data is most often used for.

4

endpoints

1/2/4

credits per call

01

Pricing teams use Shein to get jSON product cards from the selected storefront with local prices, currency and product URLs.

02

Marketplace operators use Shein to read a complete selected regional product page in its local currency, by product id or URL.

03

Catalog enrichment teams use Shein to read current price and stock from the selected regional product page in its local currency.

04

Retail analysts use Shein to get shein refuses its category shelf for API clients, so this action reports that plainly instead….

What Shein data costs

The cheapest call here is 1 credit, so $15/mo (Pro) buys 10,000 of them — $1.50 per 1,000 credits. Credits roll over and never expire, and Verified SHEIN NOT_FOUND responses on product/detail and price cost 4 credits; timeout, blocked and capacity errors remain free.

Full pricing →
$0.67–$1.50 / 1,000 credits
  • 1,000 free credits on signup, no card
  • One key, all 530 APIs, one credit pool
  • Verified NOT_FOUND: 4 credits; operational errors free
  • Credits roll over and never expire

Call it in two lines

Sign up, get 1,000 credits and one key that works on every engine. Then this is the whole protocol.

curl
curl -X POST https://api.reefapi.com/shein/v1/search \
  -H "x-api-key: $REEF_KEY" \
  -H "content-type: application/json" \
  -d '{"query":"summer dress","max_results":20}'
python
import requests

r = requests.post(
    "https://api.reefapi.com/shein/v1/search",
    headers={"x-api-key": REEF_KEY},
    json={
  "query": "summer dress",
  "max_results": 20
},
)
print(r.json()["data"])
FAQ

Have a question? We got answers.

The questions people actually ask before wiring up Shein.

Get a free key →
What is the Shein API?▾

Shein API is a ReefAPI endpoint group for shein It returns live JSON through POST requests under /shein/v1.

Is the Shein API free to try?▾

Yes. ReefAPI starts with 1,000 free credits, no card required. Shein calls use the same shared credit balance as every other ReefAPI engine.

Do I need a Shein login or account?▾

No login to Shein is needed for the API response. You call ReefAPI with your x-api-key header, and the playground can run live examples before you create a production key.

How fresh is the Shein data?▾

The page example is captured from a live search call, and production requests fetch live data through ReefAPI rather than a static sample.

How many credits does the Shein API use?▾

Shein actions currently cost 1-4 credits per successful call. Verified SHEIN NOT_FOUND responses on product/detail and price cost 4 credits; timeout, blocked and capacity errors remain free. All APIs draw from one credit pool.

Can I call Shein from an AI assistant or MCP client?▾

Yes. Connect ReefAPI once through MCP and your assistant can call shein actions with the same key, credit pool and JSON envelope used by normal REST requests.

Is the Shein API a Shein scraper?▾

It is the managed alternative to a DIY Shein scraper. Instead of building and maintaining your own scraper — proxies, headless browsers, captcha and constant breakage — you call one ReefAPI endpoint and get the same shein back as clean JSON.

Why does my Shein scraper keep getting blocked?▾

Most Shein scrapers break on anti-bot defenses, rate limits and IP bans that need rotating residential proxies and browser fingerprinting to clear. ReefAPI handles all of that for you — no proxies, no captchas, no maintenance — and returns live JSON. Blocked calls are free.

Need something this API does not do?

Name the endpoint, the field, or a source we do not carry yet. We ship new APIs every week and you would be first to get the key. Real people read every message and reply the same day.

0/4000

No account needed · we reply from [email protected]

Try it on your own data before you pay anything

The call above is the real endpoint, not a recording. A free key gives you 1,000 credits, the other 529 APIs, and the same envelope everywhere.

Endpoints, parameters and credit costs on this page are read from the live catalog and cannot drift from what the API accepts. Field notes were captured on 2026-09-14.