Sanrio APIshop.sanrio.co.jp ↗
Access Sanrio Japan online shop data via 6 endpoints: search products, get product details with variants, list categories, characters, and new releases.
What is the Sanrio API?
The Sanrio Japan Shop API provides 6 endpoints covering product search, detailed product data, category and character listings, new releases, and autocomplete suggestions from shop.sanrio.co.jp. The get_product_detail endpoint returns per-variant stock status, material, size info, and images for any product ID retrieved from search_products. Queries can be filtered by category, character, sort order, and keyword in Japanese or English.
curl -X GET 'https://api.parse.bot/scraper/671b3e36-0d6a-4074-8c11-d9bcd991c3fd/search_products?page=1&sort=recommend&limit=5&query=%E3%82%AD%E3%83%86%E3%82%A3&category_id=12&character_id=1' \ -H 'X-API-Key: $PARSE_API_KEY'
Typed, relational, agent-ready
A generated client with real types, enums, and the links between objects — the structure a flat JSON response can't carry. Autocompletes in your editor and reads cleanly to coding agents.
- Fully typed · autocompletes
- Objects link to objects
- Typed errors & pagination
Typed Python client. Set up the SDK in your uv project, then pull this API’s typed client:
uv add parse-sdk uv run parse init uv run parse add --marketplace shop-sanrio-co-jp-api
uv run parse add --marketplace pulls a pinned snapshot of this canonical API — it won’t change underneath you. To customize it, subscribe and swap to your own copy.
from parse_apis.sanrio_online_shop_api import SanrioShop, Sort, Product, ProductSummary, Category, Character
shop = SanrioShop()
# List available characters
for character in shop.characters.list():
print(character.name, character.id)
# Search for Hello Kitty products sorted by price
for item in shop.productsummaries.search(query="キティ", sort=Sort.PRICE_ASC):
print(item.name, item.price, item.product_id)
# Navigate from a summary to full detail
results = shop.productsummaries.search(query="ぬいぐるみ")
for summary in results:
detail = summary.details()
print(detail.name, detail.character_name, detail.material)
for variant in detail.variants:
print(variant.name, variant.stock, variant.status)
break
# List categories
for cat in shop.categories.list():
print(cat.name, cat.id)
# Get product by ID directly
product = shop.products.get(product_id="1_1_2605912808_1/KT_RED/-")
print(product.name, product.price, product.character_name)
Search for products on the Sanrio online shop with keyword, category, and character filters. Returns paginated results with product summaries. Sorting and page size are configurable. Each product includes a product_id usable with get_product_detail.
| Param | Type | Description |
|---|---|---|
| page | integer | Page number for pagination. |
| sort | string | Sort order for results. |
| limit | integer | Number of results per page. |
| query | string | Search keyword (e.g. 'キティ', 'hello kitty', 'ぬいぐるみ'). |
| category_id | string | Category ID to filter by, from list_categories results. |
| character_id | string | Character ID to filter by, from list_characters results. |
{
"type": "object",
"fields": {
"params": "object of query parameters sent to the site",
"products": "array of product summary objects with product_id, name, price, url, image, badges",
"total_count": "integer total number of matching products",
"current_page": "integer current page number"
},
"sample": {
"data": {
"params": {
"page": "1",
"sort": "recommend",
"limit": "60",
"freeword": "キティ"
},
"products": [
{
"url": "https://shop.sanrio.co.jp/item/detail/1_1_2605912808_1/KT_RED/-",
"name": "カラビナチャーム",
"image": "",
"price": "1,650円",
"badges": [],
"product_id": "1_1_2605912808_1/KT_RED/-"
}
],
"total_count": 0,
"current_page": 1
},
"status": "success"
}
}About the Sanrio API
Search and Filter Products
The search_products endpoint accepts a query string (e.g. キティ or hello kitty), category_id, character_id, sort (one of recommend, new, price_asc, price_desc), page, and limit. It returns an array of product objects — each with product_id, name, price, url, image, and badges — alongside total_count and current_page for pagination. Use category_id from list_categories and character_id from list_characters to narrow results to a specific section of the catalog.
Product Detail and Variants
get_product_detail takes a product_id from search results and returns the full product record: name, price, images (array of full-size URLs), specs, material, country, size_info, details (HTML), notes, and a variants array. Each variant includes its own character, name, code, price, stock, and status fields, making it straightforward to check availability across different colorways or character editions of the same item.
Characters, Categories, and New Releases
list_characters returns every character available as a filter, with each object carrying an id, name, and image URL — useful for building character-browsing UIs or mapping Sanrio character IDs to their names before passing them to search_products. list_categories returns the full category tree with id, name, and url. list_new_products returns the newest arrivals in the same structure as search_products, requiring no inputs. search_autocomplete accepts a query and returns suggestions typed as either keyword or product, matching the typeahead behavior on the site.
The Sanrio API is a managed, monitored endpoint for shop.sanrio.co.jp — not a raw scraper you maintain. Every endpoint is automatically health-checked on a schedule, and when shop.sanrio.co.jp changes and a check fails, the API is automatically queued for repair and re-verified. It is built to keep working as the site underneath it changes.
This isn't an official shop.sanrio.co.jp API — it's an independent, maintained REST wrapper over public data. Where the source has no official API (or only a limited one), Parse gives you a stable contract over a source that never promised one, and keeps it current. Need a new endpoint or field? You can revise it yourself in plain English and the agent rebuilds it against the live site in minutes — contributing the change back to the shared API is free.
Will this API break when the source site changes?+
Is this an official API from the source site?+
Can I fix or extend this API myself if I need a new endpoint or field?+
What happens if I call an endpoint that has an issue?+
- Track price changes across Sanrio character merchandise using
search_productswithprice_asc/price_descsort. - Build a character-specific product catalog by combining
list_charactersIDs withsearch_productscharacter_idfiltering. - Monitor new product launches automatically by polling
list_new_productsfor fresh entries. - Check per-variant stock status for specific Hello Kitty or Cinnamoroll items via
get_product_detailvariants. - Power a Japanese merchandise search typeahead using
search_autocompletekeyword and product suggestions. - Aggregate category-level inventory by pairing
list_categoriesIDs withsearch_productscategory_idandtotal_count. - Compare material and country-of-origin fields across products using
get_product_detailmaterialandcountryresponses.
| Tier | Price | Credits/month | Rate limit |
|---|---|---|---|
| Free | $0/mo | 100 | 5 req/min |
| Hobby | $30/mo | 1,000 | 20 req/min |
| Developer | $100/mo | 5,000 | 100 req/min |
One credit = one API call regardless of which marketplace API you call. Exceeding the rate limit returns a 429 response. Authenticate with the X-API-Key header.
Does Sanrio Japan provide an official public developer API for their online shop?+
What does `get_product_detail` return for products with multiple variants?+
variants array where each entry includes character, name, code, price, stock quantity, and status. This lets you distinguish availability between, for example, different character editions of the same plush or stationery item sold under one product listing.Does `search_products` support filtering by both category and character at the same time?+
category_id and character_id in the same request, along with query, sort, page, and limit. All filters are applied together.