Discover/Suruga-ya API
live

Suruga-ya APIsuruga-ya.jp

Access product details, condition definitions, and search results from Suruga-ya, Japan's second-hand goods marketplace. 4 endpoints covering prices, buyback values, and branch numbers.

This API takes change requests — .
Endpoint health
verified 15h ago
get_branch_definitions
search_products
get_product_detail
lookup_branch_number
4/4 passing latest checkself-healing
Endpoints
4
Updated
1mo ago

What is the Suruga-ya API?

The Suruga-ya API provides 4 endpoints for querying product data from suruga-ya.jp, a Japanese second-hand goods marketplace. The get_branch_definitions endpoint returns all 207 known branch_number-to-condition mappings used across listings, while search_products delivers paginated results with price, condition, brand, and image URL for any keyword or product ID.

Try it

No input parameters required.

api.parse.bot/scraper/c15ae5c1-0b6b-476c-b6d4-18a0e104fcb9/<endpoint>
Ready to send
Fill in the parameters and hit sign in to send to see live response data here.
Call it over HTTPgrab a free API key at signup
curl -X GET 'https://api.parse.bot/scraper/c15ae5c1-0b6b-476c-b6d4-18a0e104fcb9/get_branch_definitions' \
  -H 'X-API-Key: $PARSE_API_KEY'
Python SDK · recommended

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 suruga-ya-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.suruga_ya_product_conditions_api import Surugaya, Sort, Category, ProductSummary, Product, BranchDefinition

client = Surugaya()

# Look up a specific branch number definition
branch = client.branchdefinitions.get(branch_number="0076")
print(branch.branch_number, branch.definition, branch.is_used, branch.source)

# Get all definitions as a set
defset = client.branchdefinitionsets.get_all()
print(defset.total, len(defset.definitions))

# Search for products with sorting and category filter
for item in client.productsummaries.search(search_word="ガンダム", sort=Sort.PRICE_ASC, category=Category.GAMES):
    print(item.product_id, item.title, item.price, item.condition)
    # Drill into full product detail
    detail = item.details()
    print(detail.product_name, detail.condition_type, detail.buyback_price, detail.url)
    break

# Fetch a product directly by ID
product = client.products.get(product_id="112000127")
print(product.product_name, product.condition_type, product.condition_detail, product.url)
All endpoints · 4 totalmissing one? ·

Returns all 207 known branch_number definitions (0001-0207) that map to product conditions on suruga-ya.jp. Branch numbers represent the condition/state variant of a used product listing. Numbers 9000-9999 are generic marketplace seller listings, and numbers beyond 0207 are generic used condition. The response is a static mapping — no network call is made.

Input

No input parameters required.

Response
{
  "type": "object",
  "fields": {
    "notes": "object with explanatory notes about special ranges (0001, 9000-9999, 0208+)",
    "total": "integer - count of defined branch numbers (207)",
    "definitions": "object mapping branch_number strings (0001-0207) to their Japanese condition labels"
  },
  "sample": {
    "data": {
      "notes": {
        "0001": "Default listing (new/used standard condition)",
        "0208+": "Numbers beyond 0207 that are not explicitly defined typically map to generic 中古 (used)",
        "9000-9999": "Marketplace seller listings (マケプレ) - generic used condition, seller provides specific condition description"
      },
      "total": 207,
      "definitions": {
        "0001": "新品/中古(通常)",
        "0076": "Aランク",
        "0207": "標準"
      }
    },
    "status": "success"
  }
}

About the Suruga-ya API

Product Condition System

Suruga-ya uses a 4-digit branch_number to identify the condition variant of a used product listing. get_branch_definitions returns the full static mapping of all 207 defined numbers (0001–0207) as Japanese condition labels, plus explanatory notes on special ranges: 9000–9999 indicates generic marketplace seller listings, and numbers above 0207 fall back to a generic used-condition label. lookup_branch_number resolves a single branch number and returns definition (the Japanese label), is_used (boolean), and a source field indicating whether the result came from a static_mapping, a range_rule, or was not_found.

Product Detail Retrieval

get_product_detail accepts a required product_id (numeric string from the product URL) and optional branch_number and store_id parameters. The response includes product_name, condition_type (e.g. 中古, 新品), condition_detail extracted from the product name, a prices object with new_price and/or used_price as integers in yen, buyback_price for trade-in value, and a branch_definition field that maps the branch number to its known Japanese label. Omitting branch_number returns the default online listing; supplying store_id (the tenpo_cd value) targets a specific physical store's listing.

Search and Filtering

search_products takes a required search_word (Japanese or English keyword, or a product ID), with optional page, sort, and category filter parameters. Each page returns up to 24 items, each containing product_id, title, category, condition, price, brand, release_date, and image_url. The total_count field tells you the full result set size for building pagination. Passing an empty string for category searches across all categories.

Reliability & maintenanceVerified

The Suruga-ya API is a managed, monitored endpoint for suruga-ya.jp — not a raw scraper you maintain. Every endpoint is automatically health-checked on a schedule, and when suruga-ya.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 suruga-ya.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.

Last verified
15h ago
Latest check
4/4 endpoints passing
Maintenance
Monitored & self-healing
Will this API break when the source site changes?+
It's built not to. Every endpoint is health-checked on a schedule with automated test probes. When the source site changes and a check fails, the API is automatically queued for repair and re-verified — that's the self-healing layer. Each API page shows when its endpoints were last verified. And because marketplace APIs are shared, any fix reaches everyone using it.
Is this an official API from the source site?+
No — Parse APIs are independent, managed REST wrappers over publicly available data. That is the point: where a site has no official API (or only a limited one), Parse gives you a maintained, monitored endpoint for that data and keeps it working as the site changes — so you get a stable contract over a source that never promised one.
Can I fix or extend this API myself if I need a new endpoint or field?+
Yes — and you don't have to wait on us. This API was generated by the Parse agent, which stays attached. Describe the change in plain English ("add an endpoint that returns reviews", "fix the price field") in the revise box on the API page or via the revise_api MCP tool, and the agent rebuilds it against the live site in minutes. Contributing the change back to the public API is free.
What happens if I call an endpoint that has an issue?+
Errors are machine-readable: a bad call returns a clean status with the list of available endpoints and a repair hint, so an agent (or you) can recover or trigger a fix instead of failing silently. Confirmed failures feed the automatic repair queue.
Common use cases
  • Build a price tracker that monitors used game or anime merchandise prices on Suruga-ya using search_products and get_product_detail.
  • Decode condition labels on scraped Suruga-ya listings by resolving branch numbers through lookup_branch_number.
  • Compare buyback (buyback_price) versus resale (used_price) margins for specific product IDs.
  • Aggregate category-filtered search results to analyze second-hand inventory volume and pricing trends.
  • Display store-specific listings by passing a store_id to get_product_detail for a physical Suruga-ya branch.
  • Enumerate all 207 branch condition definitions via get_branch_definitions to localize or translate condition labels for a non-Japanese audience.
  • Identify marketplace seller listings (branch numbers 9000–9999) separately from direct Suruga-ya store stock.
Pricing & limitsSee full pricing →
TierPriceCredits/monthRate limit
Free$0/mo1005 req/min
Hobby$30/mo1,00020 req/min
Developer$100/mo5,000100 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.

Frequently asked questions
Does Suruga-ya have an official public developer API?+
Suruga-ya does not publish an official developer API or documented public data feed for third-party use.
What does `lookup_branch_number` return for a branch number outside the 0001–0207 range?+
Numbers in the 9000–9999 range return marketplace seller info with source set to range_rule. Numbers above 0207 that are not in a known range return a generic used-condition label. Numbers that match no rule at all return source: not_found with is_used and definition both null.
Does `search_products` return seller reviews or rating data?+
No. The items array from search_products includes product_id, title, category, condition, price, brand, release_date, and image_url. Seller ratings and review counts are not part of the response. You can fork the API on Parse and revise it to add a reviews or ratings endpoint if that data is accessible on the product page.
Can I retrieve historical price data or price change history for a product?+
Not currently. The API returns the current listed price and buyback price at time of request via get_product_detail. Historical pricing is not exposed. You can fork the API on Parse and revise it to add a price history endpoint if you want to store and query snapshots over time.
How does pagination work in `search_products`?+
Each response returns up to 24 items (items_per_page: 24) and includes a total_count integer. Increment the page parameter to walk through subsequent pages. If total_count is 240, there are 10 pages of results.
Page content last updated . Spec covers 4 endpoints from suruga-ya.jp.
Related APIs in MarketplaceSee all →
ebay.com API
Search and monitor eBay listings across any category, with support for active and completed/sold listings. Retrieve item details, pricing history, seller profiles and feedback, and category data. Filter by keyword, category, condition, seller, and sort order to support price research, market analysis, and inventory monitoring.
psacard.com API
Look up PSA certification details for graded collectible cards and search comprehensive population reports and price guides across all card categories. Browse collectible categories by set to discover grading data, pricing information, and population statistics.
mercadolibre.com.ar API
Search for products, cars, and real estate listings on MercadoLibre Argentina and access detailed information including product specifications, customer reviews, and seller profiles. Get comprehensive market data to compare prices, evaluate sellers, and make informed purchasing decisions across multiple categories.
willhaben.at API
Search and browse listings across Austria's largest classifieds platform. Access marketplace goods, real estate (for sale and rent), cars, jobs, and full listing details — all from a single API.
mercadolibre.com API
Search and retrieve product listings, details, customer reviews, categories, and current deals from MercadoLibre across multiple countries to find the best products and prices. Get comprehensive product information including specifications and user feedback to make informed purchasing decisions.
jp.mercari.com API
Search and browse millions of product listings on Mercari Japan with bilingual support, filtering by categories and getting detailed pricing, item specifications, and seller information. Access comprehensive marketplace data including product summaries, category overviews, and individual seller profiles to find exactly what you're looking for.
finn.no API
Search and retrieve listings across Norwegian marketplaces on FINN.no, including vehicles, real estate, jobs, and second-hand items. Access structured listing data such as price, location, images, and category-specific attributes across all major FINN.no verticals.
etsy.com API
Discover what shoppers are searching for on Etsy by accessing real-time trending keywords and popular search terms that can help you identify market demand and optimize your product listings. Get instant access to autocomplete suggestions and "Popular right now" trends to stay ahead of customer interests and improve your shop's visibility.