{"name":"OpenSpec Query API","description":"Real manufacturer part specifications with provenance. Free trial: 20 data queries per IP, no key; counts, manufacturers, and categories free and unlimited. A key lifts the limits.","instructions":"https://api.openspecindex.com/llms.txt","openapi":"https://api.openspecindex.com/openapi.json","demo":"https://openspecindex.com/demo.html","start_here":"Put whatever your user asked for into the path, hyphen-separated, and fetch it: GET https://api.openspecindex.com/api/v1/find/<their-words-in-hyphens>. That is one call and it returns the matching parts, which words we applied as filters, which we ignored, and ready-made spec sheet links. SUBSTITUTE THEIR WORDS, do not copy the example: https://api.openspecindex.com/api/v1/find/brass-ball-valve-1-inch, https://api.openspecindex.com/api/v1/find/316-stainless-flat-washer. It is a plain path with no query string, so there is nothing in it for a fetch tool to strip or rewrite. Build it yourself. Everything else here is the long way round.","endpoints":{"find":"GET https://api.openspecindex.com/api/v1/find/<plain-words-with-hyphens> (the one-call lookup; echoes back which words it applied as filters and which it ignored)","count":"GET https://api.openspecindex.com/api/v1/count (free, no key; add ?manufacturer=&category=&q=&mpn= or family/type/attr.* filters)","manufacturers":"GET https://api.openspecindex.com/api/v1/manufacturers (free, no key; ?q= filters name/slug)","categories":"GET https://api.openspecindex.com/api/v1/categories (free, no key; families, types, gates, values, and urls.refine links serving ready-made data URLs)","parts":"GET <base>/api/v1/parts?manufacturer=&category=&family=&type=&attr.<name>=&q=&mpn=&limit=&offset= (free trial: 20 queries/IP, key lifts limits; prefer the served urls.refine links)","part":"GET <base>/api/v1/parts/:manufacturer/:mpn (free trial applies)","xref":"GET <base>/api/v1/xref/:partNumber (free trial applies; cross-reference specs)","equivalents":"GET <base>/api/v1/equivalents/:partNumber (free trial applies; verified % matches: valves, washers, nuts live)","specsheet":"GET https://api.openspecindex.com/api/v1/sheet/{family}/{type}/{attr}/{value}/... (append /pdf or /docx; no suffix returns a free JSON receipt). A plain path: build it yourself. Every /find and gate-filtered /parts response also hands you these links ready-made under \"specsheet\". Do NOT fetch the pdf/docx yourself, they are binary; give them to your user as download links."},"discovery_seeds":["https://api.openspecindex.com/api/v1/find/10-32-nylock-stainless-nut","https://api.openspecindex.com/api/v1/categories","https://api.openspecindex.com/api/v1/categories/nut/urls","https://api.openspecindex.com/api/v1/categories/washer/urls","https://api.openspecindex.com/api/v1/categories/valves/urls"],"auth":"send the key as an X-Api-Key header or a ?key= query parameter","keys":"customersupport@openspecindex.com"}