AsyncAPI Converter
April 26, 2022 ยท View on GitHub
Overview
The AsyncAPI Converter converts AsyncAPI documents from versions 1.0.0, 1.1.0 and 1.2.0 to version 2.0.0. It supports both json and yaml formats on input and output. By default, the AsyncAPI Converter converts a document into the json format.
Prerequisites
- Golang version 1.11+
Installation
To install the AsyncAPI Converter package, run:
go get github.com/asyncapi/converter-go/...
TIP: You can also get binaries from the latest GitHub release.
Usage
You can use the AsyncAPI Converter in the terminal or as a package.
In CLI
Before you use the AsyncAPI Converter in the terminal, build the application. Run:
git clone https://github.com/asyncapi/converter-go.git
cd ./converter-go
go build -o=asyncapi-converter ./cmd/api-converter/main.go
To convert a document use the following command:
asyncapi-converter <document_path> [--toYAML] [--id=<id>]
where:
document_pathis a mandatory argument that is either a URL or a file path to an AsyncAPI document--toYAMLis an optional argument that allows producing results in theyamlformat instead ofjson--idis an optional argument that allows specifying the applicationid
Examples
See the following minimal examples of the AsyncAPI Converter usage in the terminal:
-
gitter-streamingconversion from version 1.2.0 to 2.0.0 in thejsonformatasyncapi-converter https://git.io/fjMPF -
gitter-streamingconversion from version 1.2.0 to 2.0.0 in theyamlformatasyncapi-converter https://git.io/fjMPF --toYAML -
gitter-streamingconversion from version 1.2.0 to 2.0.0 in thejsonformat specifying the applicationidasyncapi-converter https://git.io/fjMXl --id=urn:com.asynapi.streetlights
As a package
To see examples of how to use the AsyncAPI Converter as a package, go to the README.md.
Contribution
If you have a feature request, add it as an issue or propose changes in a pull request (PR).
If you create a feature request, use the dedicated Feature request issue template. When you create a PR, follow the contributing rules described in the CONTRIBUTING.md document.