Paginação
Navegue por grandes conjuntos de resultados com paginação baseada em páginas
Todos os endpoints de listagem retornam resultados paginados. Use os parâmetros page e limit para controlar qual porção de dados você recebe.
Parâmetros de Consulta
| Parâmetro | Tipo | Padrão | Descrição |
|---|---|---|---|
page |
integer | 1 |
Número da página (inicia em 1) |
limit |
integer | 25 |
Itens por página (máximo 100) |
Estrutura da Resposta
Cada resposta paginada inclui um objeto pagination:
{
"data": [...],
"pagination": {
"page": 1,
"limit": 25,
"total_pages": 4,
"total_items": 100,
"has_more": true
}
}| Campo | Descrição |
|---|---|
page |
Número da página atual |
limit |
Itens por página (conforme solicitado) |
total_pages |
Número total de páginas disponíveis |
total_items |
Número total de itens em todas as páginas |
has_more |
true se há mais páginas após a atual |
Iterar Todas as Páginas
Use o campo has_more para saber quando parar:
import httpx
BASE_URL = "https://api.ya.onl/v1/orders"
HEADERS = {"X-API-Key": "yv_live_v1_sua_api_key"}
all_orders = []
page = 1
while True:
response = httpx.get(BASE_URL, params={"page": page, "limit": 100}, headers=HEADERS)
body = response.json()
all_orders.extend(body["data"])
if not body["pagination"]["has_more"]:
break
page += 1
print(f"Fetched {len(all_orders)} orders")Limites
- O valor máximo de
limité 100. Solicitar mais de 100 retorna um erro400 Bad Request. - Os números de página iniciam em 1. Solicitar página 0 ou um número negativo retorna um erro de validação.
