RecursosPreçosDocsAjudaComeçar grátis
· Desenvolvedores ·

Documentação

Tudo que você precisa para integrar o SendPush ao seu site ou sistema.

Quickstart

Em menos de 5 minutos você já estará coletando inscrições e enviando push. Escolha sua integração:

🔌
Plugin WordPress
Instale, ative e configure
📋
Snippet JavaScript
Copie e cole no seu site
API REST
Integre ao seu sistema
📚
Central de ajuda
Dúvidas frequentes

Autenticação

Todas as requisições à API devem incluir sua chave de API no header Authorization. Gere sua chave em Painel → Configurações → API.

⚠️ Nunca exponha sua chave de API no frontend. Use-a apenas em servidores ou variáveis de ambiente seguras.
HTTP
Authorization: Bearer sp_live_xxxxxxxxxxxxxxxxxxxxxxxx

Exemplo com fetch

const res = await fetch('https://sendpush.com.br/api/v1/campanhas', {
  method: 'POST',
  headers: {
    'Content-Type': 'application/json',
    'Authorization': 'Bearer sp_live_xxxxxxxx'
  },
  body: JSON.stringify({ titulo: 'Meu push', corpo: 'Confira agora!' })
})

Snippet JavaScript

Para qualquer site (Next.js, Nuxt, Webflow, HTML estático), adicione o snippet abaixo antes do fechamento do </body>. Substitua SEU_SITE_ID pelo ID do seu site no painel.

HTML
<script
  src="https://sendpush.com.br/sdk.js"
  data-site-id="SEU_SITE_ID"
  async>
</script>

O SDK exibe automaticamente o banner de solicitação de permissão após 3 segundos. Você pode personalizar o comportamento:

<script>
  window.SendPushConfig = {
    siteId: 'SEU_SITE_ID',
    delay: 5000,          // ms até exibir o banner (padrão: 3000)
    position: 'bottom',   // 'bottom' ou 'top'
    autoPrompt: true,     // false para acionar manualmente
  }
</script>
<script src="https://sendpush.com.br/sdk.js" async></script>

Acionar manualmente

// Aciona o banner de permissão ao clicar em um botão
document.getElementById('meu-botao').addEventListener('click', () => {
  window.SendPush.requestPermission()
})

Plugin WordPress

O plugin SendPush para WordPress cuida de tudo: instala o service worker, exibe o banner de permissão e adiciona a metabox de criação de push no painel de publicação.

Instalação

  1. Faça o download do plugin no painel SendPush → Integração → WordPress.
  2. No WordPress: Plugins → Adicionar novo → Enviar plugin → selecione o .zip.
  3. Ative o plugin.
  4. Acesse SendPush → Configurações e insira sua Chave de API.
  5. Salve. O banner de permissão já está ativo no frontend.

Webhook (envio automático)

Quando você publica um post, o plugin envia um webhook para a API do SendPush com os dados do post. A IA processa e cria o push automaticamente. O endpoint do webhook é:

POST https://sendpush.com.br/api/push/wp-webhook
X-Site-ID: SEU_SITE_ID
X-Webhook-Secret: SEU_WEBHOOK_SECRET

API — Campanhas

Criar campanha

POST/api/v1/campanhas
ParâmetroTipoDescrição
tituloobrigatóriostringTítulo da notificação (máx. 50 caracteres)
corpoobrigatóriostringCorpo da notificação (máx. 120 caracteres)
urlstringURL de destino ao clicar. Padrão: URL do site
iconestringURL de ícone personalizado (192x192px)
segmentoobjectFiltro de audiência (ver abaixo)
agendado_parastringData/hora ISO 8601 para agendamento
// Envio imediato para todos os inscritos
{
  "titulo": "Nova matéria no portal",
  "corpo": "Confira a análise completa sobre o novo orçamento.",
  "url": "https://seusite.com.br/materia-x"
}

// Envio segmentado por estado
{
  "titulo": "Notícia do Nordeste",
  "corpo": "Confira o que acontece na sua região.",
  "segmento": {
    "estados": ["BA", "PE", "CE", "RN", "PB", "MA", "PI", "AL", "SE"]
  }
}

// Agendado
{
  "titulo": "Bom dia, leitor!",
  "corpo": "Veja as principais notícias de hoje.",
  "agendado_para": "2026-05-20T07:00:00-03:00"
}

Listar campanhas

GET/api/v1/campanhas
// Resposta
{
  "campanhas": [
    {
      "id": "uuid",
      "titulo": "Nova matéria",
      "status": "enviado",  // rascunho | agendado | enviado | cancelado
      "enviados": 8431,
      "cliques": 312,
      "ctr": 3.7,
      "criado_em": "2026-05-17T22:00:00Z"
    }
  ],
  "total": 42
}

API — Inscritos

Listar inscritos

GET/api/v1/inscritos

Parâmetros de query: page, limit (máx. 1000), cidade, estado.

Remover inscrito

DELETE/api/v1/inscritos/:id

Remove permanentemente um inscrito. Use para atender solicitações de exclusão (LGPD).


API — Estatísticas

GET/api/v1/stats
// Resposta
{
  "inscritos_total": 12847,
  "inscritos_novos_30d": 2418,
  "enviados_30d": 8431,
  "cliques_30d": 312,
  "ctr_30d": 3.7,
  "top_cidades": [
    { "cidade": "São Paulo", "estado": "SP", "inscritos": 94 },
    { "cidade": "Rio de Janeiro", "estado": "RJ", "inscritos": 43 }
  ]
}

Códigos de erro

CódigoStatus HTTPDescrição
unauthorized401Chave de API inválida ou ausente
forbidden403Sem permissão para este recurso
not_found404Recurso não encontrado
validation_error422Parâmetros inválidos ou ausentes
rate_limited429Limite de requisições excedido
plan_limit402Limite do plano atingido (inscritos ou envios)
server_error500Erro interno — contate o suporte

Limites de uso

RecursoLimite
Requisições à API1.000 req/hora por chave
Criação de campanhas50 campanhas/dia
Tamanho do título50 caracteres
Tamanho do corpo120 caracteres
Tamanho do ícone512 KB, mínimo 192x192px
Webhooks WordPressSem limite

Dúvidas sobre a API? Envie para suporte@sendpush.com.br