/v1/campaignsListar campanhas
Lista as campanhas do site, da mais nova para a mais antiga, com paginação por número de página. Cada item traz as métricas de envio quando a campanha já começou a sair.
Send request
Use the documented inputs to call this endpoint directly.
Parameters
Values are applied to the request and the example on the right.
Só campanhas neste status.
"draft" · "queued" · "queuing" · "sending" · "sent" · "failed" · "canceled"
Itens por página. Padrão 50; valores fora de 1 a 100 são ajustados para o limite mais próximo.
Número da página, começando em 1.
Responses
Página de campanhas.
{
"data": [
{
"id": 1287,
"name": "Frete grátis só hoje",
"status": "sent",
"type": "instant",
"category": "promo",
"segment_id": 42,
"segment_name": "Clientes VIP",
"scheduled_at": null,
"sent_at": "2026-10-06T15:20:40+00:00",
"send_in_user_tz": false,
"breaking": false,
"recurrence": "none",
"content": {
"title": "Frete grátis só hoje",
"body": "Em todo o site, para compras acima de R$ 99.",
"url": "https://loja.exemplo.com.br/promo",
"icon_url": "https://loja.exemplo.com.br/icone.png",
"image_url": null,
"buttons": [
{
"title": "Ver ofertas",
"action": "ver-ofertas"
}
]
},
"ab_test": false,
"test_fraction": null,
"winner_variant_id": null,
"variants": [],
"stats": {
"recipients": 18430,
"sent": 18102,
"delivered": 16877,
"clicked": 905,
"click_rate": 5
},
"created_at": "2026-10-06T14:58:02+00:00"
}
],
"links": {
"first": "https://api.pushwi.com/v1/campaigns?page=1",
"last": "https://api.pushwi.com/v1/campaigns?page=4",
"prev": null,
"next": "https://api.pushwi.com/v1/campaigns?page=2"
},
"meta": {
"current_page": 1,
"from": 1,
"last_page": 4,
"path": "https://api.pushwi.com/v1/campaigns",
"per_page": 50,
"to": 50,
"total": 173
}
}Links prontos para outras páginas. Repetem os parâmetros da requisição (tag, external_id, per_page).
Chave ausente, inválida ou revogada.
{
"message": "Credencial ausente ou inválida."
}Descrição do erro, em português. Quando a causa não tem mensagem própria, vem a mensagem padrão do código HTTP. Trate pelo código, não pelo texto.
Algum campo não passou na validação. errors traz a mensagem de cada campo.
{
"message": "O campo content.title é obrigatório.",
"errors": {
"content.title": [
"O campo content.title é obrigatório."
]
}
}Primeira mensagem de erro.
Mensagens por campo. A chave é o caminho do campo com pontos, como content.title ou definition.groups.0.rules.1.op.
Limite de requisições excedido. Espere os segundos indicados em Retry-After.
{
"message": "Muitas requisições. Tente novamente em instantes."
}Descrição do erro, em português. Quando a causa não tem mensagem própria, vem a mensagem padrão do código HTTP. Trate pelo código, não pelo texto.
Powered by heyo