Catalog your APIs

Every API in the repository, and who owns it

You need an API's definition and an owner to ask. One command lists the specifications Git tracks, their last changes and the owners you've recorded.Experimental: outside the 1.0 compatibility promise, so its commands and output can still change.

List your APIsInstall API Genie

The inventory, and the owners you add

init writes an entry per specification Git tracks, with owner: null for you to fill in. list then prints the table with the owners, or JSON with a published schema.

$ apigenie-catalog init
$ cat apigenie.yaml
catalog:
  specs:
    - name: order-events
      path: apis/events.json
      owner: null
    - name: orders-api
      path: apis/orders.yaml
      owner: null
$ # fill in the owners, commit, and
$ apigenie-catalog list
NAME          FORMAT          VERSION  OWNER          PATH              COMMIT
order-events  AsyncAPI 3.0.0  2.0.0    team-events    apis/events.json  96175d8 2026-10-12
orders-api    OpenAPI 3.1.0   1.2.0    team-commerce  apis/orders.yaml  4d0c2e1 2026-10-14

What it covers

  • listEvery specification with its format, version, path and last commit.
  • initNames and owners in the configuration file, kept on later runs.
  • JSON outputA report with a published schema, for scripts and dashboards.

The tool that does it

Step by step

Catalog the APIs of a repository: List every API specification of a repository, give each a stable name and an owner, and keep the catalog current in CI.

Run it on the repository you have

apigenie-catalog list finds the specifications without configuration. init adds the names and owners when you want them, in a file you review like code.

Other use cases