Skip to main content
The gateway publishes a single discovery endpoint:
Clients should use this endpoint instead of hard-coding route lists. Any route that is live, its price, its access mode, and its input/output schema are all available here.

Fetching the catalog

A response includes the full route list plus provider categories:

Filtering by provider

To fetch only one provider’s routes:
Aliases accepted for the Tokens provider: tokens, tokensapi, tokens-api. An unknown value returns 400 with supportedProviders listed in the body.

Route entry shape

Each item in routes[] is a CatalogRouteEntry:

Catalog envelope

The top-level catalog object reports: Backwards compatibility: clients that only read routes continue to work unchanged. The additional envelope fields are additive.

Using the catalog

Typical client flow:
  1. Fetch GET /v1/catalog once on startup (or per reload).
  2. Render routes grouped by categories.providers.
  3. For each user action, look up the matching CatalogRouteEntry, build the request according to inputSchema, and fire it.
  4. If accessMode: "exact", let your x402 client library handle payment using the price from the 402 challenge.
  5. If accessMode: "ryvo-channel", send X-Ryvo-Request-Id and RYVO-COMMITMENT with the next cumulative channel amount.
  6. If accessMode: "siwx", let your client handle SIWX using the authNetworks from the 402 challenge.
See the Integration guide for a worked TypeScript example.

See also