Skip to main content
VLSI Korea

READ-ONLY · PUBLIC · VERSION 1

Public Discovery API

Build source-aware discovery tools using the same catalog and search as the website. No account or inference service is required. Outputs preserve evidence status and upstream URLs.

GET endpoints · HEAD returns the same headers without a body
EndpointResponse
/api/v1/healthCatalog counts, backend availability and rate-limit mode
/api/v1/resourcesResources with engineering passports, 20 per page
/api/v1/resources/ibexOne stable resource and its passport
/api/v1/resources/ibex/evidenceDeduplicated pinned evidence and source-byte hashes
/api/v1/resources/ibex/runsRetained catalog resource runs; empty means not tested
/api/v1/search?q=RISC-VSearch all public Hub collections
/api/v1/categoriesExisting resource categories and counts
/api/v1/compatibility?resource=ibexDirect, scoped connections with citations

Pagination and filters

Search and resources accept q (maximum 160 characters), page, license, language, stage, evidence, docs, architecture, interface, process, domain and sort. Search also accepts type: all, resources, specs, standards, tools or tapeout. Supported filter values are listed in the search response's filterOptions. Sort values are relevance, title and recent. The date in recent sorting is the recorded catalog/source observation, not an invented release date.

Compatibility accepts resource (catalog slug), relationship (a declared relationship type), evidence (upstream-documented, hub-reproduced, known-failure or not-tested), and page. Each page contains up to 20 records. Missing and out-of-range page selections are bounded; pagination totals and pages accompany the response.

Response contract

{
  "apiVersion": "1.0",
  "data": "endpoint-specific public records",
  "pagination": {
    "page": 1,
    "pages": 1,
    "total": 0,
    "pageSize": 20
  },
  "attribution": {
    "catalog": "https://hub.vlsi.kr",
    "methodology": "https://hub.vlsi.kr/methodology"
  }
}

The shape above illustrates the envelope, not actual resource results. Search returns entries, total, page, pages, counts, filters and filterOptions at the top level. Resource fields preserve existing IDs; optional passport facts and revisions stay null when unknown. Evidence references include a source URL, source revision, observation time, source-byte SHA-256, locator and rights scope. No full third-party repository or paper is served.

Caching, quotas and errors

Successful reads advertise 60 seconds of browser caching and 300 seconds of shared caching. Errors use no-store. A configured platform limiter can enforce a shared quota; without it, the fallback permits 120 requests per minute per client per isolate and bounds its in-memory state. This fallback is not a distributed abuse-control guarantee. HTTP 429 includes Retry-After: 60.

Unknown, repeated and oversized parameters return 400; unknown endpoints/resources return 404; write methods return 405; unavailable catalog data returns 503. No endpoint executes HDL or accepts arbitrary fetch URLs. Resource runs are distinct from the authored local examples shown in the reproducibility lab.

OpenAPI 3.1 description →