---
title: "Browse the API catalog"
method: GET
path: "/catalog"
---

# Browse the API catalog

`GET /catalog`

Every API AnyAPI can serve right now, with its normalized input and output contract's location, its USD pricing, and the sources behind it. Reading the catalog is free and needs no key. Each entry's `method` and `path` are the gateway's own authority on how to call it: use them rather than rebuilding a route from the slug. Schemas are omitted here to keep the response small; GET /v1/apis/{sku} returns them for one API.

## Query parameters

- `category` string

## Response `200`

The customer-safe catalog.

- object
  - `apis` CatalogAPI[], required
    - `beta` boolean — Present when this API is published as beta. A maturity label only: a beta API routes, serves and bills exactly like any other.
    - `category` string, required — The API's category, accepted back as the `category` scope.
    - `description` string, required — One-line summary of what this API returns.
    - `excludesCallerDelay` boolean — Present when this API accepts a caller-requested wait. The published latency is net of that wait, so a caller who uses it measures a longer time.
    - `execution` DiscoveryExecution, required
      - `mode` 'sync' | 'durable', required — sync answers on the run request; durable accepts the run as a Request you poll at GET /v1/requests/{id}.
    - `failover` boolean, required — True when more than one source can serve this API, so a failed attempt is retried on another. Derived from the published sources, never authored.
    - `heavy` boolean — True when a typical response is large enough to strain an agent's context window. Reach for the run response-budget controls (fields, max_items, summary, jq) before the first call.
    - `id` string, required — Stable identifier for this API.
    - `lanes` CatalogSourceOffer[], required — The sources that can serve this API, cheapest customer charge first. Each carries its own price and its own public identity.
      - `health` DiscoverySourceHealth
        - `latencyP50Ms` integer, required — Median successful service time for this source, in milliseconds.
        - `latencySample` integer, required — Requests behind latencyP50Ms.
        - `requests` integer, required — Requests routed to this source in the window.
        - `servedRequests` integer, required — Requests this source served in the window.
        - `uptimePct` number, required — Share of requests this source served successfully, as a percentage.
        - `uptimeSample` integer, required — Requests behind uptimePct.
        - `window` '30d', required — The trailing window these measurements cover.
      - `pricing` DiscoveryOffer, required
        - `baseUsd` number — Linear offers only: USD charged for the call before per-unit billing.
        - `maxPer1kUsd` number, required — The same maximum in the per-1,000-request denomination AnyAPI quotes customers in. It is published rather than left to the client, so display this figure instead of scaling a price yourself.
        - `maxUsd` number, required — The most one request on this offer can be billed, in USD.
        - `model` 'flat' | 'linear', required — Pricing model. A flat offer is one price per request; a linear offer also carries baseUsd and perUnitUsd.
        - `perUnitUsd` number — Linear offers only: USD charged for each billable unit inside the call.
        - `unit` string, required — The billable unit. A flat offer always publishes "request".
      - `source` DiscoverySource, required
        - `artworkKey` string, required — Key for this source's artwork.
        - `id` string, required — Stable identifier for this source.
        - `kind` 'anonymous' | 'brand', required — anonymous is a stable identity for an unattributed source; brand names the dataset that supplies the data.
        - `name` string, required — Display name for this source.
    - `method` string, required — HTTP method for this API's concrete operation. Gateway authority: use it rather than assuming one.
    - `name` string, required — Display name.
    - `path` string, required — Concrete gateway path for this API. Gateway authority: use it rather than rebuilding a route from the slug.
    - `pricing` DiscoveryPricing, required
      - `failoverMaxPer1kUsd` number, required — failoverMaxUsd in the per-1,000-request denomination.
      - `failoverMaxUsd` number, required — The greatest customer-price maximum across those same sources, in USD.
      - `from` DiscoveryOffer, required
        - `baseUsd` number — Linear offers only: USD charged for the call before per-unit billing.
        - `maxPer1kUsd` number, required — The same maximum in the per-1,000-request denomination AnyAPI quotes customers in. It is published rather than left to the client, so display this figure instead of scaling a price yourself.
        - `maxUsd` number, required — The most one request on this offer can be billed, in USD.
        - `model` 'flat' | 'linear', required — Pricing model. A flat offer is one price per request; a linear offer also carries baseUsd and perUnitUsd.
        - `perUnitUsd` number — Linear offers only: USD charged for each billable unit inside the call.
        - `unit` string, required — The billable unit. A flat offer always publishes "request".
    - `provider` 'AnyAPI', required — Always "AnyAPI". AnyAPI is the provider of record for every API in the catalog.
    - `slug` string, required — The API's slug. Use it as {sku} on GET /v1/apis/{sku} and POST /v1/run/{sku}.
    - `tryEligible` boolean, required — True when this API can be run from the free public try surface.
    - `tryMaxItems` integer — The most items the free try returns. Present only when tryEligible is true, so a limit is never advertised for an API the public tool will refuse.

## Changes

- **2026-09-03** `5048c1861d8d` — 1 info
  - endpoint added

[Change history](https://skmtc.dev/getanyapi-com/apis/anyapi/changes/catalog/get.md)

---

[API](https://skmtc.dev/getanyapi-com/apis/anyapi.md) · [All operations](https://skmtc.dev/getanyapi-com/apis/anyapi/llms.txt) · [OpenAPI document](https://skmtc-service-production.skmtc.workers.dev/v1/apis/getanyapi-com/anyapi/revisions/4985e8422152/schema)
