Mockar uma resposta JSON paginada de API
Um mock GET que retorna uma página de três registros falsos ao lado de page, per_page, total e next.
Este template retorna uma página de uma coleção JSON paginada — três registros falsos junto com page, per_page, total e next — para que você possa construir renderização de lista, scroll infinito ou um cliente de paginação antes que o endpoint real exista. Os registros são gerados novamente a cada chamada, o que o torna um bom teste de código que não deve assumir uma ordenação estável.
Substitui um endpoint de API de terceiros.
Payload de resposta
{"data":[{"id":"{{faker.uuid}}","name":"{{faker.name}}","email":"{{faker.email}}"},{"id":"{{faker.uuid}}","name":"{{faker.name}}","email":"{{faker.email}}"},{"id":"{{faker.uuid}}","name":"{{faker.name}}","email":"{{faker.email}}"}],"page":1,"per_page":3,"total":42,"next":"{{mock.url}}?page=2"}
Campos que valem a pena conhecer
| Campo | O que significa |
|---|---|
| data | Um array de registros falsos, três por chamada através de tokens {{faker.*}}. |
| page | O número da página atual, fixado em 1. |
| per_page | O tamanho da página, fixado em 3. |
| total | A contagem total de registros em todas as páginas, fixado em 42. |
| next | A URL para a próxima página, construída a partir do token {{mock.url}} para que aponte para este mock. |
Criar o mock
curl -X POST https://quickmock.dev/api/mocks \
-H 'Content-Type: application/json' \
-d '{
"method": "GET",
"response_status": 200,
"content_type": "application/json",
"response_body": "{\"data\":[{\"id\":\"{{faker.uuid}}\",\"name\":\"{{faker.name}}\",\"email\":\"{{faker.email}}\"},{\"id\":\"{{faker.uuid}}\",\"name\":\"{{faker.name}}\",\"email\":\"{{faker.email}}\"},{\"id\":\"{{faker.uuid}}\",\"name\":\"{{faker.name}}\",\"email\":\"{{faker.email}}\"}],\"page\":1,\"per_page\":3,\"total\":42,\"next\":\"{{mock.url}}?page=2\"}"
}'
Chame-o
curl https://quickmock.dev/m/<slug>
O que você obtém
GET /m/<slug> -> 200 a paginated list of 3 fake records
page/per_page/total/next describe the rest of the collection
Como isso difere do original
Os três registros são aleatórios e gerados novamente a cada chamada em vez de vir de um conjunto de dados estável, e next aponta de volta para este mesmo mock em vez de uma segunda página real.
Fontes
FAQ
- O link next realmente funciona?
- É seguível: next é construído a partir do token {{mock.url}}, então ele resolve para o endereço do próprio mock. Segui-lo retorna a mesma página novamente em vez da página dois — veja a próxima pergunta para saber como encadear uma segunda página real.
- Como eu faço mock de uma segunda página?
- Crie um segundo mock com page definido como 2 e seu próprio valor next, depois aponte o next do primeiro mock para ele. Dois mocks encadeados são suficientes para testar se seu cliente para no final em vez de entrar em loop.
- Por que os registros mudam entre as chamadas?
- Eles são gerados de forma nova com tokens faker em cada requisição. Isso é intencional: um cliente que usa o índice do array como chave para os itens da lista em vez de id quebrará visivelmente, que é exatamente o bug que vale a pena capturar cedo.
Pronto para usar?
Combina bem com este guia: Retornar dados falsos realistas
Modelos relacionados
Última atualização: 2026-10-17