---
title: "List the public API catalog"
method: GET
path: "/catalog"
tags: ["catalog", "catalog"]
---

# List the public API catalog

`GET /catalog`

Returns entries from the cached public API catalog manifest.
Use ``POST /catalog/refresh`` to sync from GitHub first if the list is empty.

## Query parameters

- `q` string, nullable — Search term to filter APIs by name or description
- `limit` integer — Maximum number of results (1-500)
- `registered_only` boolean — Return only APIs already registered locally
- `unregistered_only` boolean — Return only APIs not yet registered locally

## Response `200`

Successful Response

- unknown

## Other responses

- `422` — Validation Error

## Changes

- **2026-04-13** `76e8f6063728` — 8 breaking, 10 warning, 12 info
  - the response's body type changed from `object` to no type for status `200`
  - media type `application/problem+json` was changed to a more general media type `application/json` for the response status `422`
  - the response property `detail` became optional for the status `422`
  - the `detail` response property's maxLength was unset from `4096` for the response status `422`
  - …26 more

[Change history](https://skmtc.dev/jentic/apis/jentic-control-plane-api/changes/catalog/get.md)

---

[API](https://skmtc.dev/jentic/apis/jentic-control-plane-api.md) · [All operations](https://skmtc.dev/jentic/apis/jentic-control-plane-api/llms.txt) · [OpenAPI document](https://skmtc-service-production.skmtc.workers.dev/v1/apis/jentic/jentic-control-plane-api/revisions/bd463fcefb14/schema)
