Ao construir um frontend, depurar um cliente ou aprender uma nova biblioteca HTTP, você frequentemente precisa de um endpoint que retorne JSON com aparência real sem precisar configurar um backend. Uma API fictícia (dummy API) oferece exatamente isso: um serviço público, gratuito e sempre ativo que você pode chamar agora mesmo. Este guia lista as melhores APIs fictícias públicas, mostra como chamá-las e explica quando parar de usar os dados de outra pessoa e construir sua própria API REST falsa. Se você deseja um conhecimento mais aprofundado sobre o cenário das APIs públicas, o guia MDN sobre como usar a Fetch API combina bem com tudo abaixo.
O que é realmente uma API fictícia (dummy API)
Uma API fictícia é um serviço hospedado que retorna JSON predefinido e realista para tipos de recursos comuns: usuários, posts, produtos, carrinhos, tarefas (todos). Você não precisa se cadastrar, não precisa hospedar nada e não se preocupa em quebrar dados de produção. A maioria delas aceita GET, POST, PUT, PATCH e DELETE, mas as operações de escrita são geralmente simuladas. O servidor ecoa seu payload de volta com um ID e finge que salvou, embora nada seja realmente persistido.
Essa é a característica fundamental a entender antes de depender de uma. Uma API fictícia é perfeita para prototipagem com muita leitura e para provar que seu código de requisição funciona. É inadequada no momento em que você precisa de comportamento com estado, seus próprios formatos de dados ou condições de erro personalizadas.
As melhores APIs fictícias e falsas gratuitas para testar
Aqui estão as APIs públicas que vale a pena conhecer. Todas são gratuitas e não exigem nenhuma configuração de backend da sua parte.
JSONPlaceholder
JSONPlaceholder é um clássico. Ele serve seis recursos relacionados: 100 posts, 500 comentários, 100 álbuns, 5.000 fotos, 200 tarefas (todos) e 10 usuários. Os relacionamentos são reais, então um post tem comentários e um álbum tem fotos, o que o torna bom para testar buscas aninhadas.
curl https://jsonplaceholder.typicode.com/posts/1
Você recebe de volta um único objeto de post. Requisições de escrita são aceitas, mas não salvas, então um POST /posts retorna um id: 101 falso toda vez.
DummyJSON
DummyJSON é mais abrangente. Ele oferece produtos, carrinhos, usuários, posts, comentários, citações, tarefas (todos) e receitas, além de um fluxo de autenticação que fornece um token. Se você está testando uma interface de carrinho de compras ou uma tela de login, este é o que você deve procurar.
curl https://dummyjson.com/products/1
O endpoint de autenticação permite que você faça um POST de nome de usuário e senha e receba um JWT, o que é útil para praticar o armazenamento de tokens e requisições autenticadas sem precisar configurar um provedor de identidade real.
reqres.in
reqres.in foca no ciclo de vida de requisição e resposta: listar usuários, usuário único, registrar, fazer login, respostas atrasadas. Ele é construído para demonstrar paginação e fluxos de autenticação. Uma coisa a saber: o nível gratuito agora espera um cabeçalho de chave de API. Envie x-api-key: reqres-free-v1 com suas requisições, ou você receberá um 401.
curl https://reqres.in/api/users/2 -H "x-api-key: reqres-free-v1"
Onde cada um se encaixa
| Dummy API | Melhor para | Fluxo de autenticação | Persistência de escrita |
|---|---|---|---|
| JSONPlaceholder | Leituras aninhadas, dados estilo blog | Não | Fingido, não salvo |
| DummyJSON | E-commerce, carrinhos, login | Sim (token) | Fingido, não salvo |
| reqres.in | Paginação, demos de registro/login | Cabeçalho de chave API | Fingido, não salvo |
Se você quiser um catálogo mais amplo de opções além dessas três, o resumo de APIs públicas para testes aborda escolhas mais especializadas, e a lista de APIs públicas gratuitas para desenvolvedores é útil quando você precisa de dados temáticos como clima ou moeda.
Como chamar uma API fictícia em seu código
Chamá-la é o mesmo que chamar qualquer endpoint HTTP. Aqui está um exemplo simples de fetch em JavaScript que lê um usuário e depois posta um novo.
// Ler
const res = await fetch('https://dummyjson.com/users/1');
const user = await res.json();
console.log(user.firstName);
// Escrever (ecoado de volta, não persistido)
const created = await fetch('https://dummyjson.com/users/add', {
method: 'POST',
headers: { 'Content-Type': 'application/json' },
body: JSON.stringify({ firstName: 'Ada', lastName: 'Lovelace' }),
});
console.log(await created.json()); // retorna um objeto com um id falso
Em Python com requests, a forma é igualmente curta.
import requests
r = requests.get("https://jsonplaceholder.typicode.com/todos/1")
print(r.json())
Coloque qualquer um desses em um arquivo de teste e você terá uma integração funcional para verificar. Se precisar de valores críveis para essas verificações, o guia sobre criação de dados de teste de API realistas mostra como gerar nomes, e-mails e timestamps que se parecem com tráfego de produção em vez de test123.
Quando uma API fictícia pública deixa de ser suficiente
APIs fictícias públicas são ótimas até que suas necessidades se tornem específicas. Você atingirá um limite em algumas situações comuns:
- Seus formatos de dados não correspondem. Seu aplicativo espera um campo
subscription_tiere um objetobillinganinhado. JSONPlaceholder lhe dápostsealbums. Você não pode moldar o esquema deles ao seu. - Você precisa de estado. Um carrinho real se atualiza quando você adiciona um item. As APIs fictícias esquecem seu POST no momento em que ele retorna.
- Você precisa de falhas controladas. Testar como sua interface de usuário lida com um 429, um 200 lento ou um corpo malformado é difícil quando o serviço público sempre se comporta.
- Você está construindo antes que o backend exista. Equipes de frontend e backend geralmente começam ao mesmo tempo. Você precisa de endpoints que correspondam ao contrato acordado hoje, não quando a API for lançada.
Nesse ponto, você não precisa de uma API emprestada. Você precisa de sua própria API falsa que retorne seus formatos, sob demanda, com as respostas que você controla. Essa é uma API mock construída para testes, e é onde o Apidog se encaixa.
Como construir sua própria API falsa com Apidog
Apidog é uma plataforma de API que combina design, teste, depuração e mocking em um só lugar. Seu mocking é orientado por esquema, então ele lê a estrutura do seu endpoint e gera dados falsos realistas automaticamente usando regras Faker incorporadas. Você define o formato uma vez, e cada requisição retorna valores novos e plausíveis.

Aqui está a versão curta do fluxo de trabalho.
- Crie ou importe um endpoint. Defina uma nova API no Apidog, ou importe um arquivo OpenAPI ou Swagger existente. O Apidog lê o esquema diretamente.
- Deixe o mock inteligente preencher os dados. Para um campo chamado
email, o Apidog retorna um e-mail. ParacreatedAt, ele retorna um timestamp. Paraprice, um número. Você pode ajustar essas regras por campo, para que um campocountryretorne nomes de países reais em vez de strings aleatórias. - Acesse a URL do mock local. O Apidog inicia um servidor mock e fornece uma URL para cada endpoint. Chame-o do seu frontend, seus testes ou curl, exatamente como uma API fictícia pública, exceto que as respostas correspondem ao seu contrato.
- Adicione respostas condicionais e de erro. Configure um mock para retornar um 500, um 404 ou uma resposta atrasada com base na requisição. Agora você pode testar os caminhos infelizes que os serviços públicos nunca permitem reproduzir.
Como o mock é gerado a partir da sua especificação, ele permanece sincronizado à medida que seu design evolui. Altere um campo, e o mock o reflete. Se você quiser uma visão mais ampla da geração de mocks diretamente de uma especificação, o passo a passo sobre gerar dados mock de esquemas OpenAPI aprofunda-se no lado do Faker.
API fictícia pública vs. seu próprio mock Apidog
| Necessidade | API fictícia pública | Mock Apidog |
|---|---|---|
| Dados rápidos somente leitura | Excelente | Excelente |
| Seus formatos de dados exatos | Não | Sim |
| Respostas de erro e atraso personalizadas | Não | Sim |
| Corresponde ao seu contrato OpenAPI | Não | Sim |
| Tempo de configuração | Zero | Minutos |
Nenhum dos dois é estritamente melhor. Uma API fictícia pública vence quando você precisa apenas de qualquer JSON em cinco segundos. Seu próprio mock Apidog vence no momento em que a correção contra seu contrato real importa. A maioria das equipes usa ambos: os públicos para experimentos descartáveis, um mock de projeto para tudo que é lançado.
Perguntas frequentes
Uma API fictícia é o mesmo que uma API mock?
Elas se sobrepõem, mas não são idênticas. Uma API fictícia geralmente significa um serviço público e compartilhado com dados de exemplo fixos, como JSONPlaceholder. Uma API mock é uma que você define e controla, retornando seus próprios formatos e comportamentos. Uma API fictícia é uma forma de mock que alguém já hospeda. Se você quiser a distinção detalhada, veja a explicação sobre o que é uma API mock.
APIs falsas gratuitas são seguras para usar com dados reais?
Não. Nunca envie dados reais de usuários, segredos ou tokens para uma API fictícia pública. Trate tudo o que você POSTa como registrado e visível. Use-as apenas com valores de teste descartáveis. Quando precisar de privacidade ou persistência, hospede seu próprio mock.
As APIs fictícias salvam os dados que eu envio?
Quase nunca. JSONPlaceholder, DummyJSON e reqres.in todos aceitam requisições de escrita e ecoam um resultado de volta com um ID gerado, mas nada é persistido. Atualize e seu registro "criado" desaparece. Se você precisa de um estado que permaneça, você precisa de um mock com estado ou de um backend real.
Posso construir uma API falsa sem escrever nenhum código?
Sim. Com o Apidog, você define o formato do endpoint e permite que o mocking inteligente gere os dados, sem necessidade de código de servidor. Você também pode importar um arquivo OpenAPI e obter endpoints mock funcionando em minutos.
Concluindo
APIs fictícias públicas como JSONPlaceholder, DummyJSON e reqres.in são a maneira mais rápida de obter JSON realista para prototipagem e aprendizado. Elas não custam nada e não precisam de configuração. No momento em que você precisar de seus próprios formatos de dados, estado real ou respostas de erro controladas, construa uma API falsa que você realmente possua.
O Apidog permite que você faça exatamente isso: importe sua especificação, obtenha dados mock orientados por esquema e chame seus próprios endpoints em minutos. Baixe o Apidog e transforme seu próximo contrato de API em um mock funcional antes que uma linha de código de backend exista. Veja como ele se encaixa em seu fluxo de trabalho de testes no Apidog.
