Como Criar um Mock de API no Apidog Sem Programar

Aprenda a simular uma API no Apidog com zero código usando o Smart Mock: gere automaticamente respostas realistas a partir do seu esquema, copie a URL do mock e ajuste suposições imprecisas.

Ashley Innocent

Ashley Innocent

15 julho 2026

Como Criar um Mock de API no Apidog Sem Programar

Apidog para empresas

Implantação local

SSO & RBAC

Conforme SOC 2

Explorar Apidog Enterprise

Sua equipe de frontend está bloqueada. O backend para GET /users e GET /orders ainda não está pronto, mas a interface do usuário precisa de dados realistas para renderizar listas, paginar e lidar com estados vazios. A solução antiga é escrever manualmente um arquivo JSON falso e servi-lo, e depois remendá-lo toda vez que um campo muda. Esse trabalho é tedioso e se desvincula da API real quase imediatamente.

Existe um caminho mais rápido. Se você já tem uma especificação de API, o Apidog pode gerar um mock funcional diretamente do esquema do endpoint, sem configuração e sem código. Esse recurso é chamado de Smart Mock, e ele lê os nomes e tipos dos seus campos para produzir dados que parecem reais: um campo name retorna um nome plausível, um campo email retorna um e-mail plausível. Este guia o levará através da simulação de dois endpoints de e-commerce de ponta a ponta, mostrará onde reside a URL do mock, explicará a ordem de prioridade que decide qual resposta vence e cobrirá o que fazer quando o Smart Mock adivinhar errado. Se você quiser uma introdução mais ampla ao conceito primeiro, nossa visão geral sobre o que é e como funciona o mocking de API prepara o terreno, e o site JSON Schema explica o modelo de restrição que o Smart Mock respeita.

botão

O que o Smart Mock faz e por que ele economiza seu tempo

O motor de mock do Apidog pode fazer cinco coisas, conforme a documentação. Ele pode retornar dados gerados automaticamente a partir da sua especificação de API, que é o Smart Mock. Ele pode retornar o exemplo de resposta que você definiu na especificação. Ele pode retornar uma resposta personalizada especificada. Ele pode retornar respostas diferentes com base nos parâmetros da requisição, o que é mocking condicional. E ele pode retornar respostas cujos valores se relacionam com a requisição através de scripts de mock.

O Smart Mock é o membro dessa família sem configuração, e está integrado ao Apidog junto com as ferramentas de design, depuração e teste. Você não define corpos de exemplo e não escreve regras. Contanto que um endpoint tenha um esquema de resposta especificado, o Smart Mock lê esse esquema e preenche cada campo com valores realistas. Ele atua como um fallback automático: qualquer endpoint que não tenha um exemplo predefinido ainda retorna algo sensato, para que nenhuma requisição volte vazia.

Para um frontend bloqueado, esse é o jogo inteiro. Você importa ou projeta sua API uma vez, e cada endpoint se torna um mock ao vivo no mesmo minuto. Quando o esquema muda, o mock muda junto, porque ambos leem de uma única fonte.

Antes de começar: o único requisito

O Smart Mock precisa de uma resposta especificada no endpoint. Esse é o único pré-requisito. Se você projetou a API no Apidog, adicione um esquema de resposta na definição de resposta do endpoint. Se você importou um arquivo OpenAPI, os esquemas de resposta geralmente vêm junto. Sem uma resposta definida, não há nada para o motor ler, e o mock não retorna nada útil.

Você também vai querer o cliente de desktop Apidog se planeja usar o Local Mock, já que ele roda em sua própria máquina e não está disponível no Apidog Web. Baixe o Apidog para acompanhar. É grátis, e não é necessário cartão de crédito.

Passo a passo: mock GET /users e GET /orders

Vamos construir um mock para uma pequena API de loja. Definiremos dois endpoints e chamaremos ambos.

Passo 1: defina os endpoints e seus esquemas de resposta

Crie GET /users com um corpo de resposta como este:

{
  "id": 1024,
  "name": "Amara Osei",
  "email": "amara.osei@example.com",
  "phone": "+1-415-555-0148",
  "createdAt": "2026-03-11T09:24:00Z",
  "isActive": true
}

Em seguida, crie GET /orders, retornando uma lista:

[
  {
    "orderId": "ORD-58210",
    "userId": 1024,
    "total": 84.50,
    "currency": "USD",
    "status": "shipped",
    "createdAt": "2026-05-02T14:03:00Z"
  }
]

Certifique-se de que cada propriedade tenha um tipo no esquema. Tipos e nomes são o que o Smart Mock usa para escolher bons valores.

Passo 2: encontre e copie a URL do mock

Cada endpoint obtém uma URL de mock automaticamente. Onde você a encontra depende do modo em que você está:

Clique em "Clique para copiar" para pegá-la. Uma coisa a observar: isso copia apenas a URL. Se o seu endpoint usa um método diferente de GET, ou precisa de um corpo de requisição, você adiciona o método e o corpo manualmente ao chamá-lo.

Uma URL de Local Mock é executada em 127.0.0.1 porta 4523 e se parece com isso no modo de caminho:

http://127.0.0.1:4523/m1/{projectID}-{versionNo}-{serverNo}/users

O Local Mock inicia automaticamente enquanto o cliente Apidog está aberto. Há também um formato de modo ID que aponta para um endpoint pelo seu ID:

http://127.0.0.1:4523/m2/{projectID}-{versionNo}-{serverNo}/{endpointId}

Passo 3: chame o mock

Acesse a URL com curl:

curl http://127.0.0.1:4523/m1/1234567-0-0/users

Você receberá algo parecido com isto, gerado a partir do seu esquema:

{
  "id": 3187,
  "name": "Diego Marchetti",
  "email": "diego.marchetti@example.net",
  "phone": "+1-628-555-0113",
  "createdAt": "2026-01-27T18:41:22Z",
  "isActive": true
}

Observe que o name parece um nome e o email parece um e-mail. Isso é o Property Name Matching em ação, não ruído aleatório. Atualize a requisição e os valores dinâmicos serão regenerados, então cada chamada lhe dá dados novos. Isso é útil para testar como sua interface de usuário lida com conteúdo variado.

Chame o endpoint de pedidos da mesma forma:

curl http://127.0.0.1:4523/m1/1234567-0-0/orders

Você obterá um array de objetos de pedido com totais, status e timestamps realistas, prontos para a sua visualização de lista de pedidos.

Como o Smart Mock decide cada valor

Quando o Smart Mock preenche uma única propriedade, ele trabalha com uma prioridade de geração de dados em três níveis. Entender essa ordem diz exatamente como direcionar a saída.

  1. Campo de Mock. Se você definir um valor ou expressão personalizado para a propriedade na especificação de resposta, isso prevalece. O Campo de Mock aceita dois tipos de entrada: um valor Fixo, que é um valor estático retornado toda vez, e uma instrução Faker, que é uma expressão dinâmica que produz dados variados. Por exemplo, defina o Campo de Mock de um campo status para uma instrução Faker que escolhe entre shipped, pending e delivered.
  2. Correspondência por Nome de Propriedade. Sem um Campo de Mock definido, o Smart Mock compara o nome da propriedade com regras internas usando padrões de curinga ou expressões regulares, e então gera dados que se encaixam. É por isso que email e createdAt saem corretos. As regras estão em "Configurações de Mock", e você pode adicionar as suas próprias.
  3. JSON Schema. Se o nome não corresponder a nenhuma regra, o Smart Mock retorna a um padrão baseado em tipo, limitado pelo seu esquema. Uma string sem nome correspondente e sem restrições apenas recebe uma string genérica.

Os dados gerados respeitam suas restrições de JSON Schema em todos os aspectos: comprimento da string, valores de enumeração, intervalos numéricos e comprimento do array são todos honrados. Se você definir status como uma enumeração de três valores, o Smart Mock sempre retornará apenas um desses três. Se você definir minItems de um array como 3, você receberá pelo menos três itens de volta. Cada configuração de propriedade aparece nos dados finais do mock.

O Apidog também suporta locais de mock, para que você possa gerar dados de teste em diferentes idiomas e formatos regionais. Se sua loja atende um mercado japonês, mude a localidade e os nomes e endereços virão no formato correto.

Quando o Smart Mock adivinha errado, e como ajustá-lo

O Smart Mock é uma inferência, então às vezes ele erra. Uma propriedade chamada sku pode não corresponder a nenhuma regra interna e retornar a uma string genérica. Um total pode retornar como um número simples quando você queria duas casas decimais e um intervalo sensato. Veja como corrigi-lo, do ajuste mais leve ao controle mais completo.

Aperte o esquema primeiro. Frequentemente, a correção é uma restrição melhor. Adicione um enum para status, um minimum e maximum para total, ou um pattern para sku. O Smart Mock respeita tudo isso, então a saída se encaixa no intervalo sem nenhum valor personalizado.

Defina um Campo de Mock. Quando o esquema sozinho não consegue expressar o que você deseja, defina o Campo de Mock da propriedade. Use um valor Fixo quando o campo deve sempre retornar a mesma coisa, como uma currency de USD. Use uma instrução Faker quando quiser variedade dentro de limites. A camada Faker do Apidog se baseia nas mesmas ideias da biblioteca Mock.js, e nosso guia sobre como usar o Faker no Apidog aborda a sintaxe de expressão em profundidade.

Adicione uma regra de Correspondência por Nome de Propriedade. Se o mesmo campo mal nomeado aparecer em vários endpoints, ensine ao Smart Mock uma vez. Vá para Configurações, depois Configurações Gerais, depois Configurações de Recursos, depois Configurações de Mock. Clique em Novo, defina a condição que corresponde ao nome do seu campo e atribua uma expressão de mock. A partir de então, cada sku em todo o projeto gerará o padrão que você definiu em vez de uma string genérica.

A sequência de prioridade do mock: o que realmente vence

Uma fonte comum de confusão é qual resposta um endpoint retorna quando várias são possíveis. O Apidog resolve isso com a configuração de método de mock Padrão, encontrada em Configurações do Projeto em Configurações de Mock. Ela tem duas opções:

Leia da esquerda para a direita. No padrão, uma requisição verifica uma Expectativa de Mock correspondente, e se nenhuma corresponder, o Smart Mock gera o corpo. Mude para "Exemplo de resposta primeiro" e um Exemplo de Resposta definido será verificado antes do Smart Mock retornar.

Uma regra está acima de ambas as sequências: as Expectativas de Mock sempre têm a primeira prioridade quando configuradas e suas condições correspondem, independentemente da sequência que você escolheu. Então, se você configurar uma resposta condicional que retorna um 404 quando userId é 9999, essa expectativa será disparada independentemente do método de mock padrão. Para uma visão completa das respostas baseadas em parâmetros, veja nosso guia sobre mocking de respostas de API condicionais no Apidog.

O resumo prático: as Expectativas de Mock personalizadas vencem tudo, depois ou o Smart Mock ou o Exemplo de Resposta, dependendo da sua configuração. O Smart Mock é sempre o fallback de último recurso, por isso cada requisição recebe uma resposta.

Local, Cloud e Runner Mock: onde o mock é executado

Smart Mock e Custom Mock descrevem como uma resposta é gerada. Onde esse mock está hospedado é uma escolha separada, e o Apidog oferece três opções:

Escolha Local Mock para trabalho de frontend solo, Cloud Mock quando outros precisam acessá-lo, e Runner Mock quando o mock pertence aos seus próprios servidores. Se você está comparando opções hospedadas com outros serviços, nossa comparação de ferramentas de mocking de API online as coloca lado a lado, e o guia Apidog Cloud Mock cobre a configuração hospedada em detalhes.

Alguns detalhes de roteamento que vale a pena saber

O roteamento de mock tem algumas regras que podem confundir as pessoas.

Os caminhos dos endpoints devem começar com uma /. Um caminho como /orders roteia corretamente através do ambiente de mock. Uma URL completa que não começa com / não usará o ambiente de mock de forma alguma, e um caminho sem uma barra inicial só funciona no modo ID.

Se duas APIs compartilham o mesmo método e caminho, o modo de caminho não consegue distingui-las por si só. Adicione um parâmetro de consulta ?apidogApiId={endpointId} para apontar para o endpoint exato que você deseja.

E lembre-se do comportamento de atualização: os dados do mock são atualizados quando você atualiza a requisição. Cada atualização regenera os valores dinâmicos, então se você vir a mesma resposta duas vezes, provavelmente está olhando para uma visualização em cache em vez de uma chamada nova.

Automatize o fluxo de trabalho com o Apidog CLI

O mocking em si é uma capacidade de GUI e nuvem no Apidog. O motor de mock, seja Local, Cloud ou Runner, serve as respostas; o Apidog CLI não hospeda ou inicia um servidor de mock a partir do terminal. O que o CLI adiciona é uma maneira de manter o esquema por trás de seus mocks correto à medida que o projeto evolui.

Como o Smart Mock gera sua saída a partir do esquema do endpoint, o mock é tão bom quanto a especificação. O Apidog CLI, e agentes de codificação de IA como Cursor, Claude Code, Trae e Codex trabalhando através dele, podem criar e atualizar os endpoints e esquemas em seu projeto. Isso mantém a saída do mock precisa sempre que o contrato muda, sem que ninguém precise abrir o aplicativo para editar campos manualmente.

Então, uma vez que o mock desbloqueou o trabalho de frontend, os mesmos cenários de teste do projeto são executados sem interface no CI para verificar o backend real contra o mesmo contrato que o mock descreveu. Isso é um único comando:

apidog run -t <scenario_id> -e <env_id> -r html,cli

Instale com npm install -g apidog-cli (Node.js v16 ou posterior), autentique com apidog login --with-token <seu-token>, e você pode integrar isso em qualquer pipeline. Nosso guia sobre como executar o Apidog em um pipeline CI/CD detalha a configuração. O mock mantém o frontend em movimento; o CLI mantém o backend honesto em relação à mesma fonte da verdade.

FAQ

Preciso escrever algum código para usar o Smart Mock? Não. Contanto que um endpoint tenha um esquema de resposta especificado, o Smart Mock gera dados realistas automaticamente. Você só usa código, uma instrução Faker ou um script de mock, quando deseja substituir um campo específico. Veja a visão geral da API de mock para os conceitos.

Por que minha URL de mock está retornando nada? A causa mais comum é a falta de uma definição de resposta no endpoint. O Smart Mock lê o esquema de resposta, então adicione um primeiro. Verifique também se seu caminho começa com uma / e, se você usa o Local Mock, se o cliente Apidog está aberto.

Como faço para que o Smart Mock retorne um valor específico em vez de um aleatório? Defina o Campo de Mock da propriedade. Um valor Fixo retorna a mesma coisa sempre; uma instrução Faker retorna dados variados, mas controlados. O Campo de Mock está no topo da prioridade de três níveis do Smart Mock, então ele sempre prevalece sobre a correspondência de nome e os padrões do esquema.

Meus colegas de equipe podem acessar um mock rodando no meu laptop? Somente pela sua rede local, e apenas enquanto o cliente Apidog estiver aberto, já que o Local Mock escuta em 127.0.0.1:4523. Para acesso sempre disponível, ative o Cloud Mock, que está desativado por padrão e hospedado em https://mock.apidog.com.

Qual resposta vence se eu tiver um exemplo e o Smart Mock? Depende da configuração do método de mock Padrão. Em "Smart Mock Primeiro", o Smart Mock gera o corpo. Em "Exemplo de resposta primeiro", seu Exemplo de Resposta é usado antes do Smart Mock. De qualquer forma, uma Expectativa de Mock correspondente substitui ambos.

Conclusão

O Smart Mock transforma um esquema de API em um mock funcional sem código e sem configuração, que é exatamente o que um frontend bloqueado precisa. Defina sua resposta, copie a URL do mock da aba API ou da aba Mock, e chame-a; quando as suposições precisarem de direcionamento, aperte o esquema ou defina um Campo de Mock, e lembre-se de que as Expectativas de Mock sempre vencem. Baixe o Apidog e simule seu primeiro endpoint no tempo que leva para ler esta frase.

botão

Pratique o design de API no Apidog

Descubra uma forma mais fácil de construir e usar APIs