# Commands

Source: https://apigenie.pl/docs/reference/cli

`apigenie` is the API Genie command-line interface. Each command works on one or more API
descriptions: OpenAPI, Swagger 2.0, AsyncAPI, Protobuf or GraphQL files.

## Usage

```sh
apigenie COMMAND [OPTIONS] [FILES]
```

## Commands

| Name                                                  | Summary                                                |
| ----------------------------------------------------- | ------------------------------------------------------ |
| [apigenie bundle](/docs/reference/cli/bundle)     | bundles an OpenAPI, Swagger or AsyncAPI spec, or a Protobuf file, into one file |
| [apigenie changelog](/docs/reference/cli/changelog) | builds the changelog of an OpenAPI, Swagger or AsyncAPI spec, or of a Protobuf or GraphQL file, from Git history |
| [apigenie config](/docs/reference/cli/config)     | prints the effective configuration, checks a configuration file and prints its JSON Schema |
| [apigenie convert](/docs/reference/cli/convert)   | converts a Swagger 2.0 spec to OpenAPI 3.2, a WSDL 1.1 one to OpenAPI 3.1, or a JSON Schema to an older dialect |
| [apigenie credits](/docs/reference/cli/credits)   | shows credits for 3rd party dependencies               |
| [apigenie diff](/docs/reference/cli/diff)         | compares two versions of an OpenAPI, Swagger or AsyncAPI spec, or of a Protobuf or GraphQL file |
| [apigenie evolve](/docs/reference/cli/evolve)     | plans safe API changes: splits a breaking OpenAPI change into an expand wave and a contract wave (experimental) |
| [apigenie format](/docs/reference/cli/format)     | formats OpenAPI, Swagger, AsyncAPI, Protobuf and GraphQL files |
| [apigenie i18n](/docs/reference/cli/i18n)         | extracts texts for translation from OpenAPI, Swagger and AsyncAPI specs and Protobuf and GraphQL files, and applies translations to all of them |
| [apigenie license](/docs/reference/cli/license)   | show licenses for API Genie and 3rd party dependencies |
| [apigenie lint](/docs/reference/cli/lint)         | lints OpenAPI, Swagger, AsyncAPI and Protobuf files    |
| [apigenie overlay](/docs/reference/cli/overlay)   | applies OpenAPI Overlays to an OpenAPI spec            |
| [apigenie test](/docs/reference/cli/test)         | runs .http files (HTTP, gRPC, WebSocket, MQTT) and generated requests against a live API and validates them against its OpenAPI or AsyncAPI spec or .proto file |

Code is generated with the separate `apigenie-generator` executable: see
[apigenie-generator](/docs/reference/generator). Mock servers are started with the separate
`apigenie-server` executable: see [mock server](/docs/reference/server). The API catalog of
a repository is listed and kept with the separate `apigenie-catalog` executable: see
[catalog](/docs/reference/catalog).
