# Swagger Codegen > Swagger Codegen is an Apache-2.0 template-driven code generation engine that turns an OpenAPI/Swagger definition into client libraries, server stubs and documentation across 40+ client languages and 20+ server frameworks. It runs as a CLI jar, a Docker image, a Maven/Gradle plugin, and as a free hosted REST API at generator3.swagger.io (3.x line) and generator.swagger.io (2.x line). No account, no API key, no rate limit headers. Generated by API Evangelist on 2026-08-06. The provider publishes no llms.txt of its own (/llms.txt returned 404 on generator3.swagger.io, generator.swagger.io and swagger.io). ## Key facts - Base URL (3.x): https://generator3.swagger.io/api — note the /api base path; the contract declares a relative server of `/api`. - Base URL (2.x, maintenance): https://generator.swagger.io/api - Authentication: none. Every operation is callable anonymously. - Errors: plain-text sentences with a 4xx status; no JSON error object and no error codes. Not declared in the contract. - Pagination: none. Collection endpoints return the complete array. - Idempotency: no idempotency key. Generation is a pure function of the request body. - Current release: 3.0.82 (2026-08-04); the hosted service reports 3.0.75. ## APIs - [Swagger Generator API (v3)](https://generator3.swagger.io/): the hosted code generation service — generate, generateFromURL, languages, languagesMulti, listOptions, generateBundle, renderTemplate, plus three deprecated language-listing operations. - [Swagger Generator API (v2, maintenance)](https://generator.swagger.io/): the 2.x service — generateClient, generateServerForLanguage, getClientOptions, getServerOptions, clientOptions, serverOptions, downloadFile. - [Swagger Codegen CLI](https://github.com/swagger-api/swagger-codegen#getting-started): the same engine locally, with custom template support. ## Specs - OpenAPI 3.0.1 (v3 service, verbatim): https://generator3.swagger.io/openapi.json - Swagger 2.0 (v2 service, verbatim): https://generator.swagger.io/api/swagger.json - API Evangelist per-resource OpenAPIs: openapi/swagger-codegen-generation-api-openapi.yml, openapi/swagger-codegen-languages-api-openapi.yml, openapi/swagger-codegen-options-api-openapi.yml, openapi/swagger-codegen-utilities-api-openapi.yml ## Operations (v3) - `POST /api/generate` — `generate` — generate and download code; body is a GenerationRequest; returns a binary ZIP. - `GET /api/generate` — `generateFromURL` — same, with the GenerationRequest fetched from `codegenOptionsURL`. - `GET /api/{type}/{version}` — `languages` — list generators for a type (client|server|documentation|config) and version (V2|V3). - `GET /api/types` — `languagesMulti` — list generators across several types. - `GET /api/options` — `listOptions` — configurable options for a language, as CliOption descriptors. - `POST /api/model` — `generateBundle` — return the intermediate codegen model as JSON. - `POST /api/render` — `renderTemplate` — render a Mustache template against a data object. - `GET /api/clients` — `clientLanguages` — **deprecated**, use `languages`. - `GET /api/servers` — `serverLanguages` — **deprecated**, use `languages`. - `GET /api/documentation` — `documentationLanguages` — **deprecated**, use `languages`. ## Docs - Tool overview: https://swagger.io/tools/swagger-codegen/ - Wiki: https://github.com/swagger-api/swagger-codegen/wiki - Repository: https://github.com/swagger-api/swagger-codegen - Docker guide: https://github.com/swagger-api/swagger-codegen/blob/master/docs/docker.md - Releases (the changelog of record): https://github.com/swagger-api/swagger-codegen/releases - Issues: https://github.com/swagger-api/swagger-codegen/issues - Support: https://swagger.io/support/ - Status: https://status.smartbear.com/ - Security & disclosure: https://smartbear.com/security/ - Trust center: https://trust.smartbear.com/ ## Packages - Maven: `io.swagger.codegen.v3:swagger-codegen-cli` (3.0.68), `swagger-codegen`, `swagger-codegen-maven-plugin`, `swagger-generator` - Maven (2.x): `io.swagger:swagger-codegen-cli` - Docker: `swaggerapi/swagger-codegen-cli-v3`, `swaggerapi/swagger-codegen-cli`, `swaggerapi/swagger-generator` ## Cautions for agents - The service is free, shared and unmetered. Self-throttle, or run `swaggerapi/swagger-generator` locally for volume. - `GET /api/types` returned 500 when called with no query parameters; supply `types` and `version`. - An invalid path segment on `/{type}/{version}` returns 500, not 400 — validate `type` and `version` client-side. - `AuthorizationValue` in the request body is a credential the generator uses to fetch YOUR remote spec. It is not a credential for this API. Do not send secrets to the public instance.