Referência da API
Listar ofertas
Lista paginada de Offers, com filtros úteis: por Product, por status ativo, por tipo (recurring/oneoff). Inclui dados resumidos do Product vinculado em cada item.
GET
/v2/offersAutenticação
HTTP Basic Auth. Envie sua secret key no header:
Authorization: Basic {base64(secret:SUA_SECRET_KEY)}Parâmetros
productIdstring (query, UUID)opcionalFiltra ofertas de um Product específico.
Exemplo: prd_111aaa-bbb-ccc
activeboolean (query, string)opcionalFiltra por status ativo.
Exemplo: true
kind'recurring' | 'oneoff' | 'all' (query)opcionalFiltra por tipo. `recurring` retorna só ofertas com `billingCycle != null`. `oneoff` retorna só `billingCycle = null`. `all` (default) retorna ambos.
Exemplo: recurring
searchstring (query)opcionalBusca case-insensitive em `name`, `description` e `externalId`.
Exemplo: mensal
pagenumber (query, 0-indexed)opcionalPágina. Padrão: 0.
Exemplo: 0
limitnumber (query)opcionalPor página. Padrão: 20. Máximo: 100.
Exemplo: 20
Respostas
200
Lista paginada com dados do Product embutidos em cada item.
JSON
{
"result": [
{
"id": "off_xyz789",
"externalId": "curso-mkt-mensal",
"productId": "prd_111aaa-bbb-ccc",
"name": "Mensal 12x",
"description": "Acesso por 12 meses",
"amount": 4900,
"billingCycle": "MONTHLY",
"billingCycleCount": 1,
"maxCycles": 12,
"trialDays": 7,
"deliveryPdfUrl": null,
"active": true,
"createdAt": "2026-05-26T14:38:00.000Z",
"product": {
"id": "prd_111aaa-bbb-ccc",
"name": "Curso de Marketing Digital",
"imageUrl": "https://cdn.exemplo.com/curso-marketing.jpg"
}
}
],
"totalCount": 5
}Exemplos
cURL
# Listar só ofertas recurring de um produto
curl -X GET "https://api.pagnovo.com/v2/offers?productId=prd_111&kind=recurring&active=true" \
-H "Authorization: Basic $(echo -n 'secret:SUA_SECRET_KEY' | base64)"