Skip to content

Registry API

Everything on spicerack.org is available as JSON. The API is public, read-only and needs no authentication — it serves the same data the site renders, so anything you can see here you can script against.

v1No auth requiredCORS enabledCached 5 minutes

Quick start

Find a package and read its manifest in two calls:

curl https://spicerack.org/api/v1/search?q=taxi
curl https://spicerack.org/api/v1/packages/spiceai/quickstart

Endpoints

GET/api/v1

Self-describing index: registry stats and the list of endpoints.

GET/api/v1/search

Search published packages by name, publisher or description.

q
Search term. Required for useful results.
sort
`relevance` (default), `popular`, `newest` or `name`.
page
1-based page number. Defaults to 1.
per_page
Results per page, 1–100. Defaults to 20. `limit` is accepted as an alias.

GET/api/v1/packages

Enumerate the catalogue, optionally filtered to one publisher.

org
Restrict to a single publisher.
sort
`popular` (default), `newest` or `name`.
page
1-based page number.
per_page
Results per page, 1–100. Defaults to 24.

GET/api/v1/packages/{org}/{name}

Full package metadata: install commands plus the datasets, models and dependencies declared in its manifest.

GET/api/v1/orgs/{org}

Every package published by one organization.

GET/api/v1/stats

Registry-wide counts and the top publishers.

Stability

Response fields are additive: new fields may appear, but existing ones are not renamed or removed within a version. Breaking changes ship as a new path prefix (/api/v2).

Responses are cached at the edge for 5 minutes. Please cache client-side too rather than polling — if you need bulk access, get in touch.