1. API
  2. Fundamentos
  3. Visão geral da API
Ir para Dashboard
  • Visão geral da API
  • Erros
  • Limites
  • Paginação
  • GETListar campanhas
  • POSTCriar campanha
  • GETObter campanha
  • DELETEExcluir campanha
  • PATCHAtualizar campanha
  • POSTCancelar campanha
  • POSTCriar segmento
  • GETRelatório diário
  • GETListar assinantes
  • GETObter assinante
  • DELETEExcluir assinante
  • PATCHAtualizar assinante
  • GETObter configuração do site
  • POSTRegistrar inscrição
  • DELETECancelar inscrição do dispositivo
  • POSTRegistrar evento
  • GETObter preferências
  • PUTAtualizar preferências

Visão geral da API

Endereço base, os dois tipos de autenticação e as convenções da API do Pushwi.

Loading documentation…

ErrosNext >

Powered by heyo

On this page

Dois tipos de rotaRotas de servidorRotas do SDKConvençõesTestando nesta documentaçãoRotas disponíveis

A API do Pushwi é REST, recebe e devolve JSON e fica em:

text
https://api.pushwi.com/v1

Dois tipos de rota

As rotas se dividem em dois grupos, com autenticações diferentes. Misturar os dois é o erro mais comum de quem começa.

Rotas de servidorRotas do SDK
Quem chamaO seu back-endO SDK, dentro do site
CredencialChave secreta no AuthorizationID público do site + Origin permitido
Rotascampanhas, segmentos, relatórios, assinantesconfiguração, inscrição, eventos, preferências
Limite120 por minuto por chave60 ou 120 por minuto, por IP ou dispositivo

Rotas de servidor

Mande a chave secreta do site como Bearer token:

bash
curl https://api.pushwi.com/v1/subscribers \  -H "Authorization: Bearer sk_live_1234|AbCdEf…"

A chave é criada em Desenvolvedor › Chaves de API e aparece completa uma única vez. Cada chave pertence a um site e só enxerga os dados dele. Chaves não expiram; revogue pelo painel quando não precisar mais ou suspeitar de vazamento.

Sem Authorization, com a chave em formato errado, revogada ou inexistente, a resposta é 401.

Rotas do SDK

O SDK identifica o site pelo ID público (pub_ + 24 caracteres), no caminho da URL ou no campo site do corpo. Não há segredo envolvido. A proteção é o cabeçalho Origin: a API só responde quando ele está exatamente na lista de origens permitidas do site. Caso contrário, devolve 403 com a mensagem Origem não permitida.

O navegador preenche o Origin sozinho e o JavaScript da página não consegue alterá-lo. Por isso essas rotas não funcionam a partir de um servidor, de um curl ou do botão de teste desta documentação: sem Origin, a resposta é sempre 403.

Rotas que agem sobre um dispositivo recebem o endpoint de push dele no cabeçalho X-Pushwi-Endpoint. É assim que a API sabe de quem são as preferências que estão sendo lidas ou qual inscrição cancelar.

Convenções

  • Corpo das requisições em JSON, com Content-Type: application/json.
  • Datas em ISO 8601. Nas respostas, sempre com fuso (2026-10-06T15:04:12+00:00). Nas requisições, uma data sem fuso é lida no fuso do site (padrão America/Sao_Paulo).
  • Assinantes são identificados por UUID. Campanhas e segmentos, por número inteiro.
  • Mensagens de erro vêm em português, sempre no campo message. Veja erros.

Testando nesta documentação

As páginas de cada rota têm um formulário para enviar a requisição de verdade. A chamada passa por um proxy desta documentação, que só encaminha para api.pushwi.com e não guarda nada. A chave que você digita fica salva só no seu navegador enquanto você navega entre as páginas da API.

O teste funciona para as rotas de servidor. As do SDK recusam a chamada por falta de Origin, como explicado acima.

Rotas disponíveis

MétodoRotaGrupo
GET/v1/campaignsServidor
POST/v1/campaignsServidor
GET/v1/campaigns/{id}Servidor
PATCH/v1/campaigns/{id}Servidor
POST/v1/campaigns/{id}/cancelServidor
DELETE/v1/campaigns/{id}Servidor
POST/v1/segmentsServidor
GET/v1/reports/dailyServidor
GET/v1/subscribersServidor
GET/v1/subscribers/{id}Servidor
PATCH/v1/subscribers/{id}Servidor
DELETE/v1/subscribers/{id}Servidor
GET/v1/sites/{pub}/configSDK
POST/v1/sites/{pub}/subscriptionsSDK
DELETE/v1/sites/{pub}/subscriptionsSDK
POST/v1/eSDK
GET/v1/sites/{pub}/preferencesSDK
PUT/v1/sites/{pub}/preferencesSDK

Segmentos só podem ser criados pela API; ler, editar e apagar segmentos fica no painel. Para saber quando uma campanha terminou sem consultar, use os webhooks.