Lazada products, search results, reviews, sellers and categories as JSON, on request.
Free trial credits. Catalog and estimates work immediately.
Need monthly sales and market share instead? Lazada market data →
{
"requests": [
{
"url": "https://www.lazada.co.id/products/<product-slug>-i<item-id>-s<seller-id>.html"
}
]
}{
"itemId": 7990080925,
"title": "Giv Beauty Liquid Bodywash Ungu Passion Flowers & Sweet Berry Pouch 800ml",
"categoryId": 10003072,
"defaultSkuId": 14410196412,
"sellerId": 51315,
"sellerName": "Watsons",
"skus": [
{
"skuId": 14410196412,
"originalPrice": 44500
}
]
}Get a key. Sign in and create an API key in the dashboard. New accounts get free trial credits.
Submit. POST the product URL to /v1/lazada/product-details?waitForCompletion=true to get the result in the same response.
Retrieve. Without waitForCompletion, the response says submitted; take the task ID from upstream.items[0].uuid and poll /v1/lazada/retrieve/{task_id}.
curl -X POST "https://api.magpieiq.com/scraping/v1/lazada/product-details?waitForCompletion=true" \
-H "Authorization: Bearer $MAGPIE_API_KEY" -H "Content-Type: application/json" \
-d '{"requests": [{"url": "https://www.lazada.co.id/products/<product-slug>-i<item-id>-s<seller-id>.html"}]}'
# -> {"status": ..., "cost": ..., "upstream": {...}}; without waitForCompletion, poll GET /v1/lazada/retrieve/{task_id} using upstream.items[0].uuidimport os, requests
BASE = "https://api.magpieiq.com/scraping"
H = {"Authorization": f"Bearer {os.environ['MAGPIE_API_KEY']}"}
url = "https://www.lazada.co.id/products/<product-slug>-i<item-id>-s<seller-id>.html"
r = requests.post(f"{BASE}/v1/lazada/product-details?waitForCompletion=true", headers=H,
json={"requests": [{"url": url}]}).json()
print(r["status"], r["cost"])
print(r["upstream"]) # per-item status is at upstream["items"][0]["status"]{
"itemId": 7990080925,
"title": "Giv Beauty Liquid Bodywash Ungu Passion Flowers & Sweet Berry Pouch 800ml",
"categoryId": 10003072,
"defaultSkuId": 14410196412,
"sellerId": 51315,
"sellerName": "Watsons",
"skus": [
{
"skuId": 14410196412,
"originalPrice": 44500
}
]
}/v1/lazada/product-detailsOne product's details: title, category, seller and every SKU with its price.
Product page URL/v1/lazada/product-searchThe products on a search, category or seller-store results page.
Searchcategory or seller-store URL/v1/lazada/product-reviewsReviews with rating, text, date and variant, five per request.
Review-list URL with the item ID/v1/lazada/product-reviews-v2The same reviews through a second source, with review tags and paging.
Review API URL + itemId payload/v1/lazada/seller-detailsOne seller's shop page data.
Shop URL/v1/lazada/seller-directoryLazada's public seller sitemap, page by page.
Directory URL with limit and offset/v1/lazada/seller-promotionsA seller's campaigns and promoted products.
Shopseller and item IDs/v1/lazada/category-treeThe marketplace's category tree.
Category API URL/v1/lazada/keyword-trackingLazada's public keyword tag pages with orders in the last 30–90 days, page by page.
Keyword log URL with limit and offset| Field | Type | Meaning |
|---|---|---|
itemId | integer | Lazada's product ID (the i… number in the product URL). |
title | string | Listing title. |
categoryId | integer | Lazada category ID. |
sellerId / sellerName | integer / string | The seller's ID and shop name. |
defaultSkuId | integer | The SKU shown by default on the product page. |
skus[].skuId | integer | One entry per SKU (variant). |
skus[].originalPrice | number | The SKU's price before discount, in the local currency. |
6,000credits
≈ $7.5
1,200credits
≈ $1.5
9,000credits
≈ $11
Dollar figures use the Tier 1 credit rate. Pay-as-you-go top-ups cost more per credit and larger packs cost less; the rate card has every pack.
Each request item is charged when you submit it.
Give your assistant a Lazada product and it reads the reviews and summarises what buyers praise and complain about.
For the Lazada product I give you, take the numeric item ID from the product URL (…-i5133872551.html gives 5133872551) — the review endpoints reject product page URLs. Submit POST /v1/lazada/product-reviews with {"requests": [{"url": "https://my.lazada.co.id/pdp/review/getReviewList?itemId=<item_id>"}]} and poll GET /v1/lazada/retrieve/{task_id}. Each call returns five reviews; add &pageNo=2, &pageNo=3 for more. Agree a page budget with me before reading more than a few pages, because every page is billed.
Group the reviews by star rating. Summarise the recurring complaints in the one and two star reviews and the recurring praise in the five star ones, quote a few representative lines verbatim, and say how many reviews you read out of reviewTotal.The copied prompt also tells your assistant how to get you a key if you don’t have one yet, and to ask before spending credits.
No. You need a Magpie API key. Sign-up is self-serve and includes free trial credits.
Indonesia, Malaysia, the Philippines, Singapore, Thailand and Vietnam. The market is set by the Lazada domain of the URL you submit.
Take the numeric item ID from the product URL (…-i5133872551.html gives 5133872551) and submit the review-list URL with that ID. Each request returns five reviews.
Seller directory pages through Lazada's public seller sitemap, and Seller details returns one shop's data.
In prepaid credits from one wallet shared with the Data API, per request item. The rate card shows every current price.
Yes. The Data API serves monthly GMV, units and market share for Lazada by brand, merchant and SKU, already cleaned and categorised.
Free trial credits. Catalog and estimates work immediately.