Assinaturas
Listar Assinaturas
Lista todas as assinaturas da conta com suporte a filtros por status, cliente, método de pagamento, produto e período.
Utilize o campo lastKey retornado na resposta para navegar entre as páginas.
Status possíveis: PENDING, AWAITING_PAYMENT, ACTIVE, TRIALING, PAST_DUE, PAUSED, CANCELED, INCOMPLETE.
Assinaturas com
interval: ONE_TIMEsão excluídas automaticamente do resultado.
Case de uso:
Como SaaS, quero listar todas as assinaturas ativas dos meus clientes para exibir no meu painel administrativo.
GET
/v1/subscriptionsBase URL Produção:
https://api.validapay.com.brBase URL Sandbox:
https://sandbox.validapay.com.brAuthorizations
bearer
Authorization
string obrigatório
Cabeçalho de autenticação Bearer no formato Bearer {{token}} onde {{token}} é o seu token OAuth2.
Escopos requeridos
subscriptions/read
Query Parameters
limitopcionalQuantidade de itens por página (default 15) - optional
15
lastKeyobrigatórioCursor de paginação em base64 retornado na resposta anterior - optional
startDateobrigatórioFiltro por createdAt. ISO 8601 recomendado (ex: 2026-03-10T00:00:00.000Z). YYYY-MM-DD aceito - optional
endDateobrigatórioFiltro por createdAt. ISO 8601 com fim do dia (ex: 2026-03-10T23:59:59.999Z). YYYY-MM-DD pode excluir registros do mesmo dia com horário - optional
statusobrigatórioFiltro por status (lista separada por vírgula): PENDING, AWAITING_PAYMENT, ACTIVE, TRIALING, PAST_DUE, PAUSED, CANCELED, INCOMPLETE - optional
searchobrigatórioBusca por nome ou documento do cliente - optional
documentobrigatórioFiltro por CPF ou CNPJ do cliente - optional
paymentMethodobrigatórioFiltro por método: CREDIT_CARD, PIX, BOLETO ou PIX_AUTOMATICO. Alias aceito: paymentType - optional
priceIdobrigatórioFiltro por ID do preço - optional
productIdobrigatórioFiltro por ID do produto - optional
const url = 'https://sandbox.validapay.com.br/v1/subscriptions?limit=15&lastKey=&startDate=&endDate=&status=&search=&document=&paymentMethod=&priceId=&productId=?limit=15';
const options = {
method: 'GET',
headers: {
'Authorization': 'Bearer {{token}}'
},
};
fetch(url, options)
.then(res => res.json())
.then(json => console.log(json))
.catch(err => console.error(err));Response Examples
200200▾
JSON
{
"items": [
{
"subscriptionId": "sub_xxx",
"status": "ACTIVE",
"interval": "MONTHLY",
"billingDay": 15,
"currentCycleNumber": 3,
"currentCycleAmount": 99.9,
"nextCycleChargeDate": "2024-02-15",
"customer": {
"customerId": "cus_xxx",
"name": "João Silva",
"email": "joao@email.com"
},
"lastCharge": {
"netAmount": 98.91,
"status": "PAID"
}
}
],
"pagination": {
"total": 50,
"hasMore": true,
"lastKey": "eyJ..."
}
}