OpenAPI 3 Spec generator for Metabase API and OpenAPI Generator clients
$ ./utils/generate-openapi-spec help
$ ./utils/generate-openapi-spec scrape-repo --help
$ ./utils/generate-openapi-spec generate --help
- document Metabase API using OpenAPI 3
- OpenAPI 3 spec for API added to product (will be in version 50)
/api/docs/
~~- [ ] scrape Metabase repo clojure code for API spec (maybe use clojurescript?)- Try clojarse-js for Clojure to AST
-
/src/metabase/api/
-
/enterprise/backend/src/metabase_enterprise/api/
~~
- scrape Metabase repo docs for API spec
- Try marked for parsing Markdown
-
/docs/api/
-
/docs/api/ee/
- add additional docs to enrich what is included in docs and code
- ?improve docs based on enriched docs
- OpenAPI 3 spec for API added to product (will be in version 50)
- generate OpenAPI spec from documneted Metabase API from scraping and enriched docs
- verify scraped data version matches
- combine API spec data scraped from repo and enriched docs
- process API data and generate OpenAPI 3 spec output to YAML
- ?add AJV validation
- ?use Malli to create OpenAPI spec
- use OpenAPI Generator to create API clients for:
- Typescript
- Python