Skip to content
Scrappa Get API key
Rakuten API 1 credit / request

Rakuten Search API Documentation

GET https://scrappa.co/api/rakuten/search

Rakuten Search API Documentation Search Rakuten Ichiba, the largest online marketplace in Japan. Search by keyword, by genre, or both. Filter by price in JPY, minimum review score and availability, and sort by price, newest, review count or review score. Every item has the price as a number with currency JPY, the shop, review score and count, shipping fee, points, genre ids and an image. Each item carries an id, a shop_code and a manage_number that the item and reviews endpoints accept unchanged. Every returned item matches your price and rating filters. Sponsored rows are not returned. Rakuten lists up to 150 pages per search: a page beyond the end answers 422 and is never page 1 in disguise. The response also has the genre path, the sub genres with counts and related keywords. Images are resized to 800 pixels. Use the item endpoint for the full size photos. Cost: 1 credit per request. Empty results and failed requests are not billed.

Rakuten Search API Documentation 1 credit / request

Endpoint

Request preview
GET
https://scrappa.co/api/rakuten/search
Auth header
x-api-key
Cost
1 credit / request
Response preview
200 OK
{
    "data": {
        "items": [
            {
                "id": "386567_10000118",
                "url": "https://item.rakuten.co.jp/cicibella-sports/msk50-5/",
                "name": "\u9ad8\u8a55\u4fa1\uff3c\u5e74\u9593\u30e9\u30f3\u30ad\u30f3\u30b01\u4f4d\u53d7\u8cde\uff0f \u30de\u30b9\u30af \u30d0\u30a4\u30ab\u30e9\u30fc\u30de\u30b9\u30af \u4e0d\u7e54\u5e03\u30de\u30b9\u30af \u5927\u5bb9\u91cf51\u679a \u7acb\u4f53\u30de\u30b9\u30af 20\u679a 3D\u30de\u30b9\u30af ",
                "rank": 2,
                "shop": {
                    "id": 386567,
                    "url": "https://www.rakuten.co.jp/cicibella-sports/",
                    "code": "cicibella-sports",
                    "name": "cicibella sports"
                },
...

Parameters

Start with the required fields, then add optional filters only when your use case needs them.

Runnable path

This endpoint has no required query parameters.

8 optional filters available.

query string Optional

Search keyword in Japanese or English, e.g. マスク. Send a query, a genre_id, or both.

Example value coffee shops
genre_id integer Optional

Rakuten genre id, e.g. 568357. Take the ids from subgenres in a search result or from genre_ids of an item.

Example value 1234567890
min_price integer Optional

Lowest price in JPY. Every returned item costs at least this much.

Example value 10
max_price integer Optional

Highest price in JPY. Every returned item costs at most this much.

Example value 10
min_rating number Optional

Lowest review score: 3, 3.5, 4, 4.5 or 5. Items without reviews are left out.

Example value 10
sort string Optional

Sort order: relevance (default), price_asc, price_desc, newest, review_count, review_score, price_shipping_asc or price_shipping_desc.

Example value relevance
page integer Optional

Page number from 1. Rakuten shows up to 150 pages (45 items each) per search. A page beyond the end answers 422.

Example value 1
include_sold_out boolean Optional

Set to true to include sold out items. They are hidden by default. Each item has is_sold_out.

Example value true

Response Schema

Example response fields are illustrative; inspect the JSON before integrating.

Example response fields

Scan these fields before integrating.

data meta success
JSON Response
200 OK
{
    "data": {
        "items": [
            {
                "id": "386567_10000118",
                "url": "https://item.rakuten.co.jp/cicibella-sports/msk50-5/",
                "name": "\u9ad8\u8a55\u4fa1\uff3c\u5e74\u9593\u30e9\u30f3\u30ad\u30f3\u30b01\u4f4d\u53d7\u8cde\uff0f \u30de\u30b9\u30af \u30d0\u30a4\u30ab\u30e9\u30fc\u30de\u30b9\u30af \u4e0d\u7e54\u5e03\u30de\u30b9\u30af \u5927\u5bb9\u91cf51\u679a \u7acb\u4f53\u30de\u30b9\u30af 20\u679a 3D\u30de\u30b9\u30af ",
                "rank": 2,
                "shop": {
                    "id": 386567,
                    "url": "https://www.rakuten.co.jp/cicibella-sports/",
                    "code": "cicibella-sports",
                    "name": "cicibella sports"
                },
                "tags": [
                    {
                        "name": "\u30d9\u30fc\u30b8\u30e5",
                        "group": "\u30ab\u30e9\u30fc"
                    },
                    {
                        "name": "\u30d4\u30f3\u30af",
                        "group": "\u30ab\u30e9\u30fc"
                    }
                ],
                "image": "https://thumbnail.image.rakuten.co.jp/@0_mall/cicibella-sports/cabinet/08713654/msk50-5-nl.jpg?_ex=800x800",
                "price": 398,
                "images": [
                    "https://thumbnail.image.rakuten.co.jp/@0_mall/cicibella-sports/cabinet/08713654/msk50-5-nl.jpg?_ex=800x800"
                ],
                "points": {
                    "count": 6,
                    "base_multiplier": 1,
                    "item_multiplier": null,
                    "shop_multiplier": 2,
                    "campaign_multiplier": 1
                },
                "rating": {
                    "count": 168198,
                    "score": 4.51
                },
                "item_id": 10000118,
                "shop_id": 386567,
                "currency": "JPY",
                "genre_id": 402788,
                "shipping": {
                    "fee": 0,
                    "free": true,
                    "delivery_estimate": "12\u6642\u307e\u3067\u306e\u6ce8\u6587\u3067\u5f53\u65e5\u51fa\u8377"
                },
                "subtitle": "\u3010PFE / BFE / VFE 99%\u906e\u65ad\u3011\u3010\u30e1\u30ac\u30cd\u304c\u66c7\u308a\u306b\u304f\u3044\u3011\u3010\u8033\u304c\u75db\u304f\u306a\u3089\u306a\u3044\u3011 \u723d\u5feb\u9069 \u4e0d",
                "genre_ids": [
                    551169,
                    208264,
                    568357,
                    402788
                ],
                "shop_code": "cicibella-sports",
                "is_sold_out": false,
                "manage_number": "msk50-5",
                "price_is_from": false,
                "rank_genre_id": 568357
            }
        ],
        "filters": {
            "sort": "review_count",
            "query": "\u30de\u30b9\u30af"
        },
        "currency": "JPY",
        "subgenres": [
            {
                "id": 551169,
                "name": "\u533b\u85ac\u54c1\u30fb\u30b3\u30f3\u30bf\u30af\u30c8\u30fb\u4ecb\u8b77",
                "count": 222708
            },
            {
                "id": 100938,
                "name": "\u30c0\u30a4\u30a8\u30c3\u30c8\u30fb\u5065\u5eb7",
                "count": 22343
            }
        ],
        "genre_path": [],
        "pagination": {
            "page": 1,
            "has_next": true,
            "max_page": 150,
            "page_size": 45,
            "total_results": 1517471
        },
        "related_keywords": [
            "\u30de\u30b9\u30af \u4e0d\u7e54\u5e03"
        ]
    },
    "meta": {
        "credits": 1,
        "billable": true,
        "endpoint_family": "search"
    },
    "success": true
}

Errors

Handle these documented responses before retrying or showing customer-facing failures.

422

Validation Error

A query parameter is missing or invalid. This response is not billable.

{
    "errors": {
        "query": [
            "Send a query or a genre_id."
        ]
    },
    "message": "The request validation failed"
}
422

Invalid Request

The page is beyond the last page Rakuten shows, or the genre_id is unknown. This response is not billable.

{
    "meta": {
        "billable": false,
        "retryable": false,
        "endpoint_family": "search"
    },
    "error": {
        "code": "INVALID_REQUEST",
        "message": "Rakuten shows no page 151 of this search. Send a lower page."
    },
    "success": false
}
503

Upstream Unavailable

Rakuten did not answer after the internal retries. This response is not billable. Retry after a few seconds.

{
    "meta": {
        "billable": false,
        "retryable": true,
        "endpoint_family": "search"
    },
    "error": {
        "code": "UPSTREAM_UNAVAILABLE",
        "message": "Rakuten is temporarily unavailable. Please retry. This request was not charged."
    },
    "success": false
}

Generate Code with AI

Copy a ready-made prompt with all the endpoint details, parameters, and example responses. Paste it into ChatGPT, Claude, or any AI assistant to instantly generate working code.

Try It Live

Test this endpoint in our interactive playground with real data.