SmartParsev2.34
Sign inStart free
§ 01 · Introduction

Parse any marketplace.
One POST call.

SmartParse is a developer-first parsing API for 4 marketplaces (Wildberries, Ozon, Яндекс.Маркет, Lamoda). Send a URL, receive normalized JSON in under 700 ms, p95. Webhooks for price & stock changes. Built and maintained by people who’ve scraped at scale.

Get an API key →Quick startFree tier · 1,000 requests / mo · no card
api.smartparse.dev · all systems normalp50 320 msp95 640 ms4 / 4 mp · live
streaming · parse-stream
req_4f6a2c91
A real /v2/parse trace — region resolve, residential proxy, DOM parse, normalized payload. 638 ms, one billed unit.
§ 02 · 2 min

Quick start

Install the SDK, set your key, fetch one product. If you’re comfortable with cURL, skip to the next section.

quickstart.ts
# 1 · install
npm i @smartparse/sdk
# 2 · fetch a Wildberries product in one call
import { SmartParse } from "@smartparse/sdk";
const sp = new SmartParse({ apiKey: process.env.SP_KEY });
const product = await sp.parse({
marketplace: "wildberries",
url: "https://www.wildberries.ru/catalog/156789201"
});
console.log(product.price.current); // 18990 (RUB)
console.log(product.stock.total); // 1240
console.log(product.rating.value); // 4.87
You will be billed 1 unit for this call. Free tier covers 1,000 / month.
§ 03

POST /v2/parse

stable · v2async · webhookscache · 5 min defaultcost · 1 unit / call

Send a marketplace URL and an array of fields to include. SmartParse returns normalized JSON regardless of marketplace shape. Most calls resolve under 700 ms, p95.

request.sh
curl -X POST https://api.smartparse.dev/v2/parse \
-H "Authorization: Bearer sk_live_•••••••••••••••" \
-H "Content-Type: application/json" \
-d '{
"marketplace": "ozon",
"url": "https://www.ozon.ru/product/airpods-pro-2-1234567/",
"include": ["price", "stock", "rating", "reviews", "specs"]
}'
response.json
// 200 OK · 638 ms · 1 unit billed
{
"marketplace": "ozon",
"fetched_at": "2026-05-21T09:14:02.488Z",
"product": {
"id": "ozon_1234567",
"title": "Apple AirPods Pro 2 (USB-C)",
"brand": "Apple",
"price": { "current": 18990, "original": 24990, "currency": "RUB" },
"stock": { "total": 1240, "warehouses": 8 },
"rating": { "value": 4.87, "reviews": 2310 },
"specs": [ /* 41 normalized rows */ ]
},
"_meta": { "request_id": "rq_01J4...", "cache": "miss", "billed": 1 }
}
§ 04

Response shape

Every successful response carries the same envelope. Marketplace-specific fields land under product; metadata under _meta.

marketplaceREQUIRED
string
Slug — one of 'wildberries', 'ozon', 'yandex.market', 'lamoda'.
fetched_at
string · ISO 8601
Server time the source was hit.
productREQUIRED
object
Normalized product. See sub-schema below.
product.price
object
{ current, original, currency } — currency is ISO 4217.
product.stock
object
{ total, warehouses } — total is units, warehouses is count.
product.rating
object?
{ value, reviews } — null if marketplace doesn't expose.
_meta.cache
'hit' | 'miss'
Whether the response came from cache (5 min default).
_meta.billed
integer
Units billed for this call. Always 1 for /parse.
§ 05

POST /v2/webhooks

Subscribe to price.changed, stock.changed, or rating.changed. SmartParse polls every 60 s and POSTs to your URL with HMAC-signed deltas.

webhook.ts
await sp.webhooks.create({
event: "price.changed",
marketplace: "wildberries",
product_id: "156789201",
delivery: "https://yourapp.com/hooks/price"
});
// Receives a POST whenever the price moves
// { event, fetched_at, product, _delta: { price: { from: 18990, to: 17490 } } }
§ 06

Rate limits & SLA

We publish our actual numbers, including P99 and historical incidents. Most teams never hit limits; if you do, scale lanes are available without code changes.

limits.json
// Default plan — Developer (free)
{
"rate": "60 req / minute · per API key",
"burst": "120 req / minute · 30 s window",
"sla": "99.95 % uptime · 30-day rolling",
"latency":{
"p50": "320 ms",
"p95": "640 ms",
"p99": "1.1 s"
}
}
Uptime · 30-day rolling
99.97 %
target 99.95 %
p50
320 ms
p95
640 ms
p99
1.1 s
Recent incidents
  • 2026-04-08 · partial · lamoda · 14 min
  • 2026-03-21 · degraded · proxy-pool · 8 min
  • 2026-02-02 · degraded · ozon · 22 min
§ 07 · Get started

Read enough? Get your API key.

1,000 requests / month on the free tier. No card, no sales call. You’ll be making real calls within four minutes.

Собрано вISKRA.WORKSКейсХочу такой же →