Get a scrape session's products
The actual scraped data — "give me what I just scraped." Returns every submission in the session, not only merged ones: the background merge step runs on a schedule, so right after a scrape most items are still pending, with product: null until a later pass merges them. Poll GET /me/scrapes/{id} (or just re-request this endpoint) until status is completed. Billed against your daily quota only for rows that actually carry a merged product — a pending placeholder costs nothing.
Authorization
bearerAuth Bearer token — see API Overview for how to get one and use it.
In: header
Path Parameters
uuidQuery Parameters
Invalid or missing values are silently clamped to the default rather than rejected with a 400.
1 <= value1500 max — deliberately generous relative to a typical UI-facing API, sized for bulk pulls.
1 <= value <= 500100Response Body
application/json
application/json
application/json
application/json
application/json
application/json
curl -X GET "https://example.com/me/scrapes/b1f8b6b0-2f7d-4a1a-9a3c-2f6d8e9a1234/products"{ "data": [ { "submission_status": "merged", "product": { "id": "e86bee19-9cc9-4a83-b9cc-6b61f1209d90", "marketplace": "wildberries", "external_id": "231151629", "url": "https://www.wildberries.ru/catalog/231151629/detail.aspx", "name": "Air Rift Breathe White Pure Platinum Women's", "brand": "Nike", "category_path": [ "Обувь", "Женская", "Туфли и лоферы" ], "attributes": { "color": "желтый", "season": "демисезон", "is_authentic": true }, "image_cover": "https://basket-15.wbbasket.ru/vol2311/part231151/231151629/images/big/1.webp", "image_gallery": [ "https://basket-15.wbbasket.ru/vol2311/part231151/231151629/images/big/1.webp" ], "video_cover": null, "video_gallery": [], "seller": { "id": "3994154", "name": "POIZON(ДЭВУ)", "code": "2604540" }, "trust_status": "unverified", "price_flagged": false, "prices": [ { "country_code": "ru", "region_code": null, "user_auth_status": "anonymous", "price": 7093, "old_price": 8651, "currency": "RUB", "stock_status": null, "stock_quantity": null, "recorded_at": "2026-08-02T23:21:53.185302+00:00" } ], "special_price": [ { "country_code": "ru", "region_code": "", "user_auth_status": "anonymous", "min": 6783, "max": 6880 } ], "stats": null, "first_seen_language": "ru", "default_language": "ru", "translations": [ { "language": "ru", "name": "Air Rift Breathe White Pure Platinum Women's", "category_path": [ "Обувь", "Женская", "Туфли и лоферы" ], "attributes": { "color": "желтый", "season": "демисезон", "is_authentic": true }, "updated_at": "2026-08-02T23:21:53.081+00:00" } ], "first_seen_at": "2026-08-01T01:03:17.913664+00:00", "last_seen_at": "2026-08-02T23:21:53.081+00:00" } }, { "submission_status": "pending", "product": null } ], "meta": { "total": 40, "page": 1, "page_size": 100 }}Get one scrape session's status GET
`status` is `completed` once every submission in the session has left `pending`/`processing` — not necessarily "every item successfully merged"; see `stats` for the exact per-status breakdown. A session with `stats.total: 0` is always `processing`, never `completed`, whether because nothing has arrived yet or (much later) because its submissions have already aged out of retention.
List your scrape sessions GET
Every call to the extension's scraper — a single page or a bulk run — becomes one scrape session, scoped automatically to your own API key; there's no way to see another account's sessions, and no filter parameters exist because none are needed. Most recent first. `status`/`stats` are computed live from the underlying submissions, not cached, so they always reflect the current state of the background merge process.