Kit de ferramentas open source para OpenAPI/Swagger, com referência interativa de API, cliente de API com foco no uso offline e integrações com vários frameworks web.
swagger-api/swagger-codegen
Ferramenta de linha de comando que gera SDKs de clientes de API, stubs de servidor e documentação HTML a partir de uma definição OpenAPI/Swagger.
- Estrelas
- 17,793
- Forks
- 5,948
- Issues abertas
- 3,442
- Último commit
- ontem
O que é?
O Swagger Codegen é um gerador de código baseado em templates que lê uma especificação OpenAPI ou Swagger e produz bibliotecas cliente de API, stubs de servidor e documentação de API. Ele elimina a necessidade de escrever manualmente modelos de requisição e wrappers de endpoints para cada linguagem usada pela equipe.
O projeto oferece suporte a uma longa lista de destinos, incluindo clientes para Java, C#, Go, Python, TypeScript, PHP, Swift, Kotlin, Rust e muitas outras linguagens, além de stubs de servidor para frameworks como Spring, ASP.NET Core, Flask e Rails. A documentação pode ser gerada como um arquivo HTML estático ou como um app HTML dinâmico de página única. A geração pode ser executada por meio de um CLI JAR, Docker ou integrações com fluxos de trabalho do Maven e Gradle.
O projeto é dividido nas linhas de versões 2.X e 3.X, com diferentes IDs de grupo do Maven, e o suporte ao OpenAPI 3.0 existe apenas na linha 3.X. Os templates são personalizáveis, permitindo que as equipes ajustem a saída ou adicionem seus próprios destinos.
Recursos principais
- 01Gera clientes de API em dezenas de linguagens e frameworks a partir de especificações OpenAPI ou Swagger.
- 02Produz stubs de servidor para frameworks como Spring, ASP.NET Core, Flask e Rails.
- 03Gera documentação de API em HTML estática ou dinâmica.
- 04Os templates podem ser personalizados para alterar a saída ou adicionar novos geradores.
- 05Pode ser executado por meio de um CLI, Docker ou fluxos de trabalho do Maven e Gradle.
Casos de uso
- Gerar um SDK tipado para uma API REST interna consumida por várias equipes de clientes.
- Criar a estrutura inicial de stubs de servidor a partir de um design de API spec-first.
- Publicar documentação de referência em HTML a partir de um arquivo OpenAPI.
- Criar um cliente petstore de exemplo para explorar a estrutura do código gerado.
Início rápido
- 1
Clone o repositório
git clone https://github.com/swagger-api/swagger-codegen - 2
Acesse o diretório do projeto
cd swagger-codegen - 3
Compile o projeto com Maven
mvn clean package - 4
Gere um cliente PHP a partir da especificação do Petstore
java -jar modules/swagger-codegen-cli/target/swagger-codegen-cli.jar generate -i https://petstore.swagger.io/v2/swagger.json -l php -o /var/tmp/php_api_client
Antes de usar
- É preciso compilar a partir do código-fonte com Java e Maven, o que exige configuração adicional.
- As versões 2.X e 3.X são mantidas separadamente e usam group IDs diferentes; confira qual linha você precisa.
Tópicos
Perguntas frequentes
- O que é swagger-codegen?
- Ferramenta de linha de comando que gera SDKs de clientes de API, stubs de servidor e documentação HTML a partir de uma definição OpenAPI/Swagger. O Swagger Codegen é um gerador de código baseado em templates que lê uma especificação OpenAPI ou Swagger e produz bibliotecas cliente de API, stubs de servidor e documentação de API. Ele elimina a necessidade de escrever manualmente modelos de requisição e wrappers de endpoints para cada linguagem usada pela equipe.
- swagger-codegen é gratuito? Qual é a licença?
- swagger-codegen é open source sob a licença Apache-2.0. Confira os termos da licença antes de usá-lo em produtos comerciais.
- swagger-codegen ainda é mantido?
- Manutenção ativa. O último commit de swagger-codegen foi em 22 de out. de 2026.
- Para que posso usar swagger-codegen?
- Gerar um SDK tipado para uma API REST interna consumida por várias equipes de clientes. Criar a estrutura inicial de stubs de servidor a partir de um design de API spec-first. Publicar documentação de referência em HTML a partir de um arquivo OpenAPI. Criar um cliente petstore de exemplo para explorar a estrutura do código gerado.
- Como instalar swagger-codegen?
- Clone o repositório: git clone https://github.com/swagger-api/swagger-codegen Acesse o diretório do projeto: cd swagger-codegen Compile o projeto com Maven: mvn clean package Gere um cliente PHP a partir da especificação do Petstore: java -jar modules/swagger-codegen-cli/target/swagger-codegen-cli.jar generate -i https://petstore.swagger.io/v2/swagger.json -l php -o /var/tmp/php_api_client
- Onde consigo swagger-codegen?
- O código-fonte e as instruções de instalação estão no GitHub: https://github.com/swagger-api/swagger-codegen
Resumo gerado por IA a partir do README do projeto. As estatísticas do GitHub são atualizadas diariamente.
Projetos relacionados
Swagger UI exibe documentação interativa de APIs no navegador a partir de um arquivo de especificação OpenAPI/Swagger.
Gera SDKs de cliente para API, esqueletos de servidor e documentação em dezenas de linguagens e frameworks a partir de especificações OpenAPI (v2 e v3).
Plugin do protoc que gera um servidor proxy reverso para traduzir chamadas HTTP RESTful com JSON em requisições gRPC para serviços Go.
Ferramenta open source que gera um site responsivo de referência de API, com três painéis, a partir de definições OpenAPI, Swagger, AsyncAPI ou GraphQL.
Cliente de API open source que armazena coleções como arquivos de texto simples no sistema de arquivos, uma alternativa offline ao Postman e ao Insomnia.