Misumi Ec APIus.misumi-ec.com ↗
Search the MISUMI USA industrial components catalog via API. Returns paginated series results with titles, URLs, and hit counts across the full product range.
What is the Misumi Ec API?
The MISUMI USA API exposes 1 endpoint — search_products — that queries the us.misumi-ec.com industrial components catalog by keyword and returns up to 60 results per page. Each response includes the total result count, pagination metadata, and an array of product series entries with series codes, titles, and direct configurator URLs. Use it to locate mechanical components, fasteners, automation parts, and other catalog items programmatically.
curl -X GET 'https://api.parse.bot/scraper/45af5f38-bfb9-40e8-aa46-bbcadfe27ebb/search_products?page=2&query=linear+bearing&page_size=45' \ -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 us-misumi-ec-com-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.
"""Walkthrough: MISUMI USA product search — bounded, re-runnable."""
from parse_apis.us_misumi_ec_com_api import MisumiUsa, InputFormatInvalid
client = MisumiUsa()
# Search for linear bearings, cap at 5 total items.
for product in client.products.search(query="linear bearing", limit=5):
ship = f"{product.min_days_to_ship}d" if product.min_days_to_ship else "n/a"
print(f"{product.title} in_stock={product.in_stock} ship={ship}")
print(f" categories: {', '.join(product.categories)}")
print(f" cad: {', '.join(product.cad_types)} badges: {', '.join(product.badges)}")
# Drill into one result to read its detail URL and seller.
try:
hit = client.products.search(query="dowel pin", limit=1).first()
except InputFormatInvalid as e:
print(f"Bad request: {e.message}")
hit = None
if hit is not None:
print(f"\n{hit.title}")
print(f" seller: {hit.seller_name} url: {hit.product_url}")
print(f" id: {hit.id} type: {hit.result_type}")
print("\nexercised: products.search")
Searches the MISUMI USA catalog by keyword and returns one page of search results in the site's relevance order. Each row is one search hit: usually a product series (result_type 'series', product_url points at the series detail/configurator page), occasionally a catalog category or spec group the site surfaces among the results (result_type 'category'). Pagination is caller-controlled through page (1-based, default 1) and page_size (the site accepts exactly 30, 45 or 60; default 30); total_results and total_pages come from the site, and has_more is true while page < total_pages. A query with no matches returns an empty products array with total_results 0. Two upstream round trips per call. The search surface does not carry prices, ratings, minimum order quantities or shipping locations for this site (MISUMI prices are quoted per configured part number on the detail page), so price, currency, rating, min_order_quantity and location are always null here; in_stock, min_days_to_ship, cad_types and badges are the availability signals the search results do carry.
| Param | Type | Description |
|---|---|---|
| page | integer | 1-based result page number. |
| queryrequired | string | Free-text keyword to search for, e.g. a product type or part description. |
| page_size | integer | Results per page; the site accepts only 30, 45 or 60 and other values are rejected. |
{
"type": "object",
"fields": {
"page": "integer, the page returned",
"query": "the keyword the site searched for",
"has_more": "boolean, true when a later page exists",
"products": "array of search hits; each has id (series code or category id), title, price (always null), currency (always null), product_url, image_url, rating (always null), seller_name (brand), min_order_quantity (always null), location (always null), result_type ('series' or 'category'), categories (array of category names, leaf first), in_stock (boolean), min_days_to_ship (integer, 99 means not stated), cad_types (array like ['2D','3D']), badges (array of site promotion labels)",
"page_size": "integer, results per page applied by the site",
"total_pages": "integer, total pages at this page_size",
"total_results": "integer, total matching hits reported by the site"
},
"sample": {
"data": {
"page": 1,
"query": "linear bearing",
"has_more": true,
"products": [
{
"id": "110300031960",
"price": null,
"title": "Flanged Linear Plain Bearings - Metallic, Sintered Bronze, Metric",
"badges": [
"Volume Discount Available"
],
"rating": null,
"currency": null,
"in_stock": true,
"location": null,
"cad_types": [
"2D",
"3D"
],
"image_url": "https://content.misumi-ec.com/image/upload/v1/p/jp/product/series/110300031960/110300031960_001.jpg",
"categories": [
"Plain & Self-Lubricating Bushings",
"Plain Bushings & Thrust Washers",
"Automation Components"
],
"product_url": "https://us.misumi-ec.com/vona2/detail/110300031960/",
"result_type": "series",
"seller_name": "MISUMI",
"min_days_to_ship": 0,
"min_order_quantity": null
}
],
"page_size": 30,
"total_pages": 20,
"total_results": 587
},
"status": "success"
}
}About the Misumi Ec API
What the API Returns
The search_products endpoint accepts a query string and returns a structured page of results from the MISUMI USA catalog. Each item in the products array carries an id (series code or category identifier), a title, a product_url pointing to the series detail or configurator page, and a result_type field that distinguishes product series entries (series) from catalog category hits. The price and currency fields are present in every record but always return null — pricing on MISUMI is configuration-dependent and is not surfaced at the search level.
Pagination and Page Size
The endpoint supports a page parameter (1-based) and a page_size parameter. The site enforces a strict whitelist: only values of 30, 45, or 60 are accepted for page_size; any other value is rejected. The response includes total_results, total_pages, and has_more to help you iterate through large result sets. For example, a search for "linear guide" might return several hundred hits spread across multiple pages at page_size=60.
Scope and Coverage
The catalog covers MISUMI USA's full range of configurable industrial components — mechanical parts, automation components, fasteners, dies and mold components, and related tooling. Results reflect the site's default relevance ranking; there are no sort or filter parameters beyond the keyword and pagination controls. The product_url in each result links directly to the MISUMI series page where dimensions and configurations can be explored.
The Misumi Ec API is a managed, monitored endpoint for us.misumi-ec.com — not a raw scraper you maintain. Every endpoint is automatically health-checked on a schedule, and when us.misumi-ec.com 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 us.misumi-ec.com 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?+
- Building an internal parts search tool that links engineers directly to MISUMI configurator pages via
product_url - Cataloging available MISUMI series codes (
idfield) for a procurement or inventory system - Comparing result counts (
total_results) across keyword variants to gauge catalog coverage for a component type - Scraping series titles and URLs to populate a supplier parts database for MRO sourcing workflows
- Paginating through all
seriesresults for a component category to build a reference list of MISUMI offerings - Validating whether a specific component type is stocked by MISUMI USA before submitting an RFQ
| Tier | Price | Credits/month | Rate limit |
|---|---|---|---|
| Free | $0/mo | 200 | 5 req/min |
| Hobby | $30/mo | 1,000 | 20 req/min |
| Developer | $100/mo | 5,000 | 100 req/min |
| Team | $300/mo | 20,000 | 300 req/min |
| Company | $1,000/mo | 100,000 | 500 req/min |
Each endpoint has a fixed posted price per successful call — most fall between 1 and 10 credits — shown on this API's page before you run it. Exceeding the rate limit returns a 429 response. Authenticate with the X-API-Key header.
Does MISUMI USA offer an official developer API?+
What does the `result_type` field tell me, and how should I handle category hits?+
products array includes a result_type field. The value series indicates a product series with a configurator page; other values indicate catalog category results rather than individual product series. If your use case requires only orderable parts, filter for result_type === 'series' in your application logic.Why are `price` and `currency` always null in search results?+
null for every record. Follow the product_url to the series configurator page for pricing.Can I filter results by product category, material, or dimension ranges?+
search_products endpoint accepts only a free-text query, a page number, and a page_size value. There are no filter parameters for category, material, tolerance, or other attributes. You can fork this API on Parse and revise it to add a filtered-search endpoint if the source exposes that capability.