Qoo10 Japan API & Scraper
Qoo10 (qoo10.jp) is eBay Japan's marketplace, strong in Korean cosmetics, fashion and electronics, with thousands of shops and frequent Mega Wari coupon events.
🤖 Using an AI assistant? Copy this link into ChatGPT / Claude / Cursor — it reads every endpoint and parameter instantly and tells you if this API fits your use case.
This API reads it as JSON. `search` takes Japanese or English words, an optional category, a price range and one of the site's five sort orders, and returns 40 items per page for up to 50 pages, with sponsored PR rows returned separately. Each row carries the item id, title, brand, the sale price in yen, the struck price and the price drop when the card prints one, the coupon price the card advertises with its label (shop coupon, Mega Debut, Mega Wari), Q-points, rating and review count, free shipping, the country the item ships from and the shop with its grade. `product` takes an item id and returns the item page: sale price, the seller's list price, discount % and deal type, the item's recent minimum selling price, the coupon price and the page's own price breakdown, Q-points, stock and price for each option, the order limit, shipping fee, carrier and free-shipping threshold, ship-from country, rating, satisfaction, review and sales counts, category codes, images and the seller's grade, rating and followers. `shop` lists everything one shop sells, `ranking` returns the ranking 200 lists and `categories` the category tree.
What a Qoo10 field actually contains
Fields that read differently from how they look. Every row was measured against live qoo10.jp pages on 2026-10-18.
| Field | What it holds |
|---|---|
| price | The sale price in yen, consumption tax included, before any coupon: what the item page charges. Search row, item page and the page's own price figure agreed on 9 of 9 items checked across three searches. |
| coupon_price, coupon_price_label, coupon_price_type | The lower figure Qoo10 prints next to the price once a coupon is applied, with the site's own label: ショップ割時 (shop coupon, shop_coupon), メガデビュー時 (first-purchase Mega Debut coupon, mega_debut), メガ割時 (Mega Wari, mega_wari), メガポ時 (Mega Point, mega_point). It is never put in price. Example: price 2,840 yen, coupon_price 1,988 yen, Mega Debut. |
| price_breakdown (product) | The item page's own lines: 販売価格 (list price), 一般割引 (general discount), ショップ商品クーポン (shop item coupon) and the resulting maximum-discount price. 3,000 − 600 − 216 = 2,184 on the item checked. |
| struck_price, price_drop (search) | A card that prints "2,700円 (150円 ↓)" shows a drop from the item's recent selling price; struck_price equalled the item page's recent_min_price on 5 of 5 items. A card without the arrow strikes the seller's list price. |
| recent_min_price, list_price (product) | list_price is the seller's set price (販売価格); recent_min_price is the item's recent minimum selling price that the search card strikes through. They can differ: 3,300 and 2,700 on the same item. |
| price_is_placeholder | True for rows priced 999,999,999 yen, a placeholder some sellers use for items they are not selling. A price-high-to-low search for iphone started with 40 of them. |
| variants[].stock, option_levels | Stock and price difference for each option as the item page publishes it. For two-level options (type, then size) the site sends the second level only after a choice; stock is then null, not 0, and option_levels_read is lower than option_levels. |
| ld_price_is_coupon_price | The page's structured data sometimes carries the coupon price instead of the sale price (1 of 9 items checked). This flag says so; price stays the sale price. |
Prices are in yen including Japanese consumption tax. The same item and the same search read from four different countries in the same minute returned the same prices, currency, shipping fee and rows.
Real request and response JSON
Captured from the indexed primary action, search, on .
{
"method": "POST",
"url": "https://api.reefapi.com/qoo10/v1/search",
"headers": {
"x-api-key": "$REEF_KEY",
"content-type": "application/json"
},
"body": {
"query": "iphone"
}
}{
"ok": true,
"meta": {
"api": "qoo10",
"endpoint": "search",
"mode": "live",
"latency_ms": 1190,
"record_count": 40,
"bytes": 461375,
"cache_hit": false,
"price_basis": "JPY, consumption tax included, the sale price the page charges before any coupon (coupon / Mega Wari / Mega Point figures are separate fields)",
"sponsored_count": 8,
"upstream_requests": 1,
"charged_credits": 3,
"version": "0.1.0",
"request_id": "aed1973a1ec246db",
"queue_ms": 2.1,
"fetched_at": "2026-10-18T17:45:04.816Z"
},
"data": {
"query": "iphone",
"filters": {
"category_id": null,
"min_price": null,
"max_price": null,
"sort": "ranking"
},
"page": 1,
"last_page": 50,
"has_more": true,
"page_clamped": false,
"results": [
{
"item_id": "1211521329",
"url": "https://www.qoo10.jp/g/1211521329",
"title": "【最安値挑戦】iPhone 17 Pro Max 256GB 銀",
"brand": "アップル",
"brand_no": "101226",
"official_brand": false,
"image": "https://gd.image-qoo10.jp/li/146/752/7530752146.g_100-w-st_g.jpg",
"price": 200560,
"currency": "JPY",
"price_is_placeholder": false,
"struck_price": 218000,
"price_drop": 17440,
"coupon_price": null,
"coupon_price_label": null,
"coupon_price_type": null,
"qpoints": null,
"rating": 4.75,
"rating_pct": 95,
"review_count": 57,
"free_shipping": true,
"ships_from": "JP",
"shop_coupon_available": false,
"category_large_id": "120000037",
"category_medium_id": "220000286",
"shop": {
"shop_id": "liveshop",
"name": "らいぶshop",
"grade": "power",
"grade_label": "パワーセラー",
"url": "https://www.qoo10.jp/shop/liveshop"
},
"sponsored": false
},
{
"item_id": "1219275004",
"url": "https://www.qoo10.jp/g/1219275004",
"title": "【最安値挑戦】iPhone 18 Pro Max 256GB グレイシャー",
"brand": "アップル",
"brand_no": "101226",
"official_brand": false,
"image": "https://gd.image-qoo10.jp/li/484/669/8500669484.g_100-w-st_g.jpg",
"price": 265000,
"currency": "JPY",
"price_is_placeholder": false,
"struck_price": null,
"price_drop": null,
"coupon_price": null,
"coupon_price_label": null,
"coupon_price_type": null,
"qpoints": null,
"rating": 4.55,
"rating_pct": 91,
"review_count": 2,
"free_shipping": true,
"ships_from": "JP",
"shop_coupon_available": false,
"category_large_id": "120000037",
"category_medium_id": "220000286",
"shop": {
"shop_id": "liveshop",
"name": "らいぶshop",
"grade": "power",
"grade_label": "パワーセラー",
"url": "https://www.qoo10.jp/shop/liveshop"
},
"sponsored": false
},
{
"item_id": "1219006980",
"url": "https://www.qoo10.jp/g/1219006980",
"title": "iPhone 18 Pro Max 256GB SIMフリー [シルバー] (SIMフリー) 即納 カード決済OK",
"brand": null,
"brand_no": null,
"official_brand": false,
"image": "https://gd.image-qoo10.jp/li/734/284/8497284734.g_100-w-st_g.jpg",
"price": 242847,
"currency": "JPY",
"price_is_placeholder": false,
"struck_price": 258788,
"price_drop": 15941,
"coupon_price": null,
"coupon_price_label": null,
"coupon_price_type": null,
"qpoints": null,
"rating": null,
"rating_pct": null,
"review_count": null,
"free_shipping": true,
"ships_from": "JP",
"shop_coupon_available": false,
"category_large_id": "120000037",
"category_medium_id": "220000286",
"shop": {
"shop_id": "dcstyle",
"name": "DC-LIFE",
"grade": "power",
"grade_label": "パワーセラー",
"url": "https://www.qoo10.jp/shop/dcstyle"
},
"sponsored": false
}
],
"sponsored": [
{
"item_id": "1206032773",
"url": "https://www.qoo10.jp/g/1206032773",
"title": "new iPhone ケース 猫耳デザインケース 背面クリア 耐衝撃 軽量 薄型 かわいいスマホケース ハイブリッドケース mimi 猫耳 ネコミミ",
"brand": "アップル",
"brand_no": "101226",
"official_brand": false,
"image": "https://gd.image-qoo10.jp/li/686/059/8430059686.g_100-w-st_g.jpg",
"price": 980,
"currency": "JPY",
"price_is_placeholder": false,
"struck_price": 1080,
"price_drop": 100,
"coupon_price": null,
"coupon_price_label": null,
"coupon_price_type": null,
"qpoints": null,
"rating": null,
"rating_pct": null,
"review_count": null,
"free_shipping": false,
"ships_from": "JP",
"shop_coupon_available": false,
"category_large_id": "120000036",
"category_medium_id": "220000283",
"shop": {
"shop_id": "Lemon777",
"name": "Lemon 77",
"grade": "general",
"grade_label": "ショップ",
"url": "https://www.qoo10.jp/shop/Lemon777"
},
"sponsored": true
},
{
"item_id": "1171846809",
"url": "https://www.qoo10.jp/g/1171846809",
"title": "iPhone17 ガラスフィルム フィルム 保護フィルム docomo au softbank 楽天モバイル simフリー ガラス カバー 耐衝撃 本体 保護 全面吸着 2.5D 平面設計 クリア",
"brand": "アップル",
"brand_no": "101226",
"official_brand": false,
"image": "https://gd.image-qoo10.jp/li/328/176/7481176328.g_100-w-st_g.jpg",
"price": 1280,
"currency": "JPY",
"price_is_placeholder": false,
"struck_price": null,
"price_drop": null,
"coupon_price": null,
"coupon_price_label": null,
"coupon_price_type": null,
"qpoints": null,
"rating": null,
"rating_pct": null,
"review_count": null,
"free_shipping": true,
"ships_from": "JP",
"shop_coupon_available": true,
"category_large_id": "120000036",
"category_medium_id": "220000285",
"shop": {
"shop_id": "mywaysmart",
"name": "MY WAY SMART",
"grade": "good",
"grade_label": "優秀セラー",
"url": "https://www.qoo10.jp/shop/mywaysmart"
},
"sponsored": true
},
{
"item_id": "925055064",
"url": "https://www.qoo10.jp/g/925055064",
"title": "2枚 iPhone 18 Pro Max 17e ProMax 16e 15plus 12 13 mini Air 14 13 16promax 強化ガラスフィルム 自動吸着 スクリーンプロテクター",
"brand": "アップル",
"brand_no": "101226",
"official_brand": false,
"image": "https://gd.image-qoo10.jp/li/817/651/4675651817.g_100-w-st_g.jpg",
"price": 900,
"currency": "JPY",
"price_is_placeholder": false,
"struck_price": null,
"price_drop": null,
"coupon_price": null,
"coupon_price_label": null,
"coupon_price_type": null,
"qpoints": null,
"rating": 4.65,
"rating_pct": 93,
"review_count": 47,
"free_shipping": true,
"ships_from": "JP",
"shop_coupon_available": false,
"category_large_id": "120000036",
"category_medium_id": "220000285",
"shop": {
"shop_id": "naruyama",
"name": "成山",
"grade": "good",
"grade_label": "優秀セラー",
"url": "https://www.qoo10.jp/shop/naruyama"
},
"sponsored": true
}
]
}
}What the Qoo10 Japan API does
| Action | Description | Concrete use case | Key params |
|---|---|---|---|
| search | Search Qoo10 Japan (qoo10.jp) across every shop by keyword, optionally inside one category, a price range (applied by the site to the sale price), in one of the site's five sort orders. 40 organic items per page (sponsored PR rows returned apart), up to 50 pages. Each row: item id, title, brand, sale price (JPY, tax included), struck price and price drop, the coupon price the card advertises (shop coupon / Mega Wari / Mega Debut) with its label, Q-points, rating and review count, free-shipping flag, ship-from country, shop id/name/grade. | Pricing teams call search to search Qoo10 Japan (qoo10.jp) across every shop by keyword, optionally inside one category, a…. | query, category_id, min_price, max_price, sort, ... |
| product | One Qoo10 Japan item page: title, brand, condition, the sale price, the seller's list price, discount % and deal type (タイムセール / 今日の特価), the item's recent minimum selling price, the coupon price the page advertises (shop coupon / Mega Wari / Mega Debut / Mega Point) with its label and the page's own price breakdown, Q-points, stock and price delta per option, order limit, shipping fee, carrier and free-over threshold, ship-from country, rating, satisfaction %, review and sales counts, category codes, images and the seller (grade, rating, followers, award). | Marketplace operators call product to get one Qoo10 Japan item page. | item_id, url |
| shop | Every item one Qoo10 Japan shop sells, 60 per page, in one of the site's five sort orders: the same row fields as `search`. | Catalog enrichment teams call shop to get every item one Qoo10 Japan shop sells, 60 per page, in one of the site's five sort orders. | shop_id, sort, page |
| ranking | Qoo10 Japan's ranking 200 (ランキング200), overall or for one of its eleven tabs: rank, item id, title, brand, sale price and struck price, review count, free shipping. | Retail analysts call ranking to get qoo10 Japan's ranking 200 (ランキング200), overall or for one of its eleven tabs. | group |
| categories | The Qoo10 Japan category tree as the site's menu publishes it: 11 groups, their large categories and medium categories with 9-digit codes usable as `search.category_id`. | Pricing teams call categories to get the Qoo10 Japan category tree as the site's menu publishes it. | none |
Call search from your stack
curl -X POST https://api.reefapi.com/qoo10/v1/search \
-H "x-api-key: $REEF_KEY" \
-H "content-type: application/json" \
-d '{"query":"iphone"}'import requests
r = requests.post(
"https://api.reefapi.com/qoo10/v1/search",
headers={"x-api-key": REEF_KEY},
json={
"query": "iphone"
},
)
print(r.json()["data"])const res = await fetch("https://api.reefapi.com/qoo10/v1/search", {
method: "POST",
headers: {
"x-api-key": process.env.REEF_KEY,
"content-type": "application/json",
},
body: JSON.stringify({
"query": "iphone"
}),
});
const { ok, data, meta, error } = await res.json();Ask your MCP-connected assistant: call reefapi.qoo10.search with {"query":"iphone"}.Who uses this API and why
- Track the sale price, coupon price and Mega Wari price of Korean cosmetics across Qoo10 shops.
- Monitor stock per option and order limits for a list of items every day.
- Follow the Qoo10 ranking 200 by category to spot fast-moving products.
- Compare a brand's official shop with resellers on price, shipping and seller rating.
- Build a Japanese marketplace price feed with category codes, ship-from country and images.
Questions developers ask before integrating
Do I need a Qoo10 account or seller API key?
No. Everything is read logged out from the public qoo10.jp site, and you call reefapi.com from anywhere. The Qoo10 seller API (QAPI) is not involved.
Can I get the Mega Wari price?
Yes when the page prints it: coupon_price with coupon_price_type mega_wari, kept apart from price. Mega Wari was not running on 2026-10-18; shop-coupon and Mega Debut prices were measured live that day (5 of 40 rows on one page carried a coupon price).
Which search filters are there?
Category, price range and five sort orders (ranking, price low to high, price high to low, most reviewed, newest). On 2026-10-18 "iphone" in category 220000285 returned 40 of 40 rows in that category and none of the unfiltered page; 100,000 to 150,000 yen cut the pages from 50 to 11 with 40 of 40 rows in range.
Does the price filter use the coupon price?
No. Qoo10 filters on the sale price: a 2,200 to 2,400 yen search returned 40 of 40 rows with price in range, two of them with a coupon price below 2,200.
How many results can I read?
40 items per page, up to 50 pages per query: the site's own pager. Qoo10 publishes no result count, so last_page (at most 50) is the size signal. Narrow with a category or price range to reach more items.
Are sponsored items mixed into the results?
No. The 8 PR rows on a ranking-order page are returned in sponsored[], apart from the 40 organic results. Sorted pages carried none.
Can I list everything one shop sells?
Yes, shop takes the shop id from any search row and returns 60 items per page in the same five orders; the medicube shop had 73 items over 2 pages.
What happens with an item that no longer exists?
product answers NOT_FOUND. A query with no match answers an empty results list.
What is the Qoo10 Japan API?
Qoo10 Japan API is a ReefAPI endpoint group for search qoo10.jp and read any item: sale price, list price, coupon and mega wari price apart, q-points, shipping, stock per option and seller rating. It returns live JSON through POST requests under /qoo10/v1.
Is the Qoo10 Japan API free to try?
Yes. ReefAPI starts with 1,000 free credits, no card required. Qoo10 Japan calls use the same shared credit balance as every other ReefAPI engine.
Do I need a Qoo10 Japan login or account?
No login to Qoo10 Japan 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 Qoo10 Japan 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 Qoo10 Japan API use?
Qoo10 Japan actions currently cost 3 credits per successful call. Failed or blocked calls are free. All APIs draw from one credit pool.
Can I call Qoo10 Japan from an AI assistant or MCP client?
Yes. Connect ReefAPI once through MCP and your assistant can call qoo10 actions with the same key, credit pool and JSON envelope used by normal REST requests.