mix ash_oaskit. generate
(AshOasKit v0.2.1)
View Source
Generate OpenAPI specification files from Ash domains.
Tip
If you already define a spec module with use AshOaskit, prefer
oaskit's exporter — it uses the exact spec your app serves:
mix openapi.dump MyAppWeb.ApiSpecThis task remains useful for YAML output and one-off generation without a spec module.
Usage
mix ash_oaskit.generate --domains MyApp.Blog,MyApp.AccountsOptions
--domains- Comma-separated list of Ash domains (required)--version- OpenAPI version: "3.0" or "3.1" (default: "3.1")--output- Output file path (default: "openapi.json")--format- Output format: "json" or "yaml" (default: "json")--title- API title--api-version- API version string--pretty- Pretty-print the output (default: true)
Examples
# Generate OpenAPI 3.1 spec
mix ash_oaskit.generate --domains MyApp.Blog --output openapi-3.1.json
# Generate OpenAPI 3.0 spec
mix ash_oaskit.generate --domains MyApp.Blog --version 3.0 --output openapi-3.0.json
# Generate both versions
mix ash_oaskit.generate --domains MyApp.Blog --version 3.1 --output openapi-3.1.json
mix ash_oaskit.generate --domains MyApp.Blog --version 3.0 --output openapi-3.0.json