Limites
Limites de requisições por minuto e os limites do plano que a API aplica.
Loading documentation…
| Grupo | Rotas | Limite | Contado por |
|---|---|---|---|
| Servidor | campanhas, segmentos, assinantes | 120/min | chave de API |
| SDK, escrita | inscrição, cancelamento, eventos, gravar preferências | 60/min | IP + site |
| SDK, leitura | configuração, ler preferências | 120/min e 600/min | dispositivo (X-Pushwi-Endpoint, ou o IP quando não houver) e IP |
As respostas trazem X-RateLimit-Limit e X-RateLimit-Remaining. Ao passar do limite, a API responde 429 com o cabeçalho Retry-After, em segundos:
Na rota de servidor, cada chave tem o seu próprio limite. Se um processo em lote precisa de mais vazão, como apagar muitos assinantes de uma vez, espalhe as chamadas no tempo em vez de criar chaves extras para contornar o limite.
Nas rotas do SDK, o limite de escrita é por IP. Redes com muita gente atrás do mesmo IP, como empresas e universidades, podem bater nele em picos de tráfego. Nesses casos o SDK deixa um aviso [pushwi] no console e tenta de novo na próxima página.
O plano da organização define quantos assinantes, sites e envios por mês cabem na conta. A API aplica dois deles:
| Limite | Onde aparece |
|---|---|
| Assinantes | A inscrição de um dispositivo novo recebe 402 com Limite de assinantes do plano atingido. Dispositivos que já estão inscritos continuam podendo se reinscrever, e tags, atributos e login enviados pelo SDK seguem atualizando. Dispositivos ativos continuam recebendo campanhas. |
| Envios por mês | A campanha que passa do limite é cortada ou falha. O mesmo vale quando a base está acima do limite de assinantes, por exemplo depois de mudar para um plano menor. O webhook traz send_limit_reached: true em campaign.sent, ou reason: "plan_limit_exceeded" em campaign.failed. |
Uma organização suspensa não aceita inscrições nem envia campanhas. Nesse caso o motivo da falha é service_interrupted.
Os valores de cada plano estão em pushwi.com/pricing.
| Item | Limite |
|---|---|
| Título da notificação | 255 caracteres |
| Texto da notificação | 500 caracteres |
| Botões por campanha | 2 |
| Tags por assinante, enviadas por inscrição | 50 |
| Atributos por inscrição | 50 |
| Propriedades por evento personalizado | 20 |
| Grupos por segmento | 10 |
| Regras por grupo | 20 |
| Origens permitidas por site | 20 |
| Assinantes por página na listagem | 100 |
Na prática, os navegadores cortam título e texto bem antes desses limites. Mantenha o título em até uns 50 caracteres e o texto em até uns 120 para não perder o fim da frase no celular.