Um servidor mock gerado a partir do seu spec OpenAPI

Aponte o Mockzilla para um documento OpenAPI e todos os caminhos dele respondem na hora. Os dados vêm dos seus próprios schemas, então respeitam tipos, formatos, enums e campos obrigatórios em vez de devolver o mesmo objeto de enchimento em todo lugar.

  • Sem handler para escrever
  • Validação de requisições
  • Várias APIs, uma URL só
  • Motor com licença MIT
GET /v1/customers/cus_9Fh2200
{
  "id": "cus_9Fh2",
  "email": "dana@example.com",
  "currency": "eur",
  "balance": 4210,
  "created": 1772841600,
  "delinquent": false
}
currency bateu com o enum, balance voltou como inteiro, e ninguém escreveu um handler.

O que é um servidor mock de OpenAPI?

Um servidor que lê um documento OpenAPI e responde todos os caminhos dele com dados que batem com os schemas que você declarou. Sem handlers, sem fixtures e sem uma segunda descrição da API para manter em dia com a primeira.

O Mockzilla usa o spec como única entrada. Suba ele, ou adicione a GitHub Action ao repositório onde ele vive, e cada endpoint começa a responder em uma URL estável que o time inteiro pode chamar.

Esperando por uma API que você já sabe descrever

O spec costuma ser acertado bem antes de a API existir. Até lá o frontend fica travado, os testes de integração não têm contra o que rodar, e todo mundo escreve fixtures descartáveis que em uma semana já não batem com o contrato.

O mock é construído a partir do próprio spec, então ele não tem como divergir. Mude o spec e o mock muda junto. Se um endpoint precisa de uma resposta exata, escreva só ela na mão e o resto continua sendo gerado.

Gerado a partir dos seus schemas

Cada endpoint devolve dados que validam contra o próprio schema de resposta: tipos, formatos, enums, campos obrigatórios e objetos aninhados.

Validação de requisições

As requisições que chegam são conferidas contra o spec, então um body errado ou um parâmetro faltando falha no mock em vez de passar batido.

Várias APIs em um servidor

Cada spec vira um serviço com o próprio prefixo de URL, então a sua API e as de terceiros de que você depende respondem no mesmo host.

Perguntas

Preciso escrever as respostas eu mesmo?
Não. O spec é a entrada, e todos os caminhos dele respondem sem você escrever nada.
Dá para sobrescrever um endpoint com uma resposta fixa?
Dá. Coloque um arquivo JSON naquele caminho e ele responde exatamente com aquele body, enquanto o resto do spec continua gerando. O mesmo vale para caminhos que o seu spec nem descreve.
E se um endpoint precisar de lógica de verdade?
Aí entra o modo codegen. O Mockzilla gera handlers Go tipados a partir do seu spec, você escreve o comportamento que precisa e sobe o servidor compilado. Tudo o que você não encostou continua respondendo pelo spec.
Os dados gerados são confiáveis?
A geração de respostas roda continuamente contra 2.215 documentos OpenAPI públicos que cobrem 98.464 endpoints, e cada endpoint precisa produzir dados que validem contra o próprio schema.

Traga um spec. Leve um servidor mock.

Começar não custa nada. Infraestrutura dedicada quando precisar.