Conceitos
Limites e reenvio
Os limites protegem a criação de envios e o uso de códigos. Respeite o retorno da API e dê uma próxima ação clara no seu fluxo.
Nesta página
Limites de criação
POST /v1/send tem um limite da plataforma por conta. A configuração padrão é 600 envios por minuto; a operação pode alterar esse valor.
A aplicação também pode ter limites por minuto e por destinatário por hora, configurados no painel. Eles vêm desativados por padrão; os valores iniciais, quando habilitados, são 60 por minuto e 5 por destinatário por hora.
Esses limites também se aplicam ao modo test. Recuperar um envio existente com idempotência não consome novamente o limite de criação.
HTTP 429 e Retry-After
HTTP/1.1 429 Too Many Requests
Content-Type: application/problem+json
Retry-After: 37O código do erro é rate_limited. Retry-After informa quantos segundos aguardar antes da próxima tentativa.
Apresente esse prazo no botão de reenvio e impeça chamadas repetidas enquanto ele não termina. Se retentar o mesmo pedido, preserve a chave de idempotência e os bytes do corpo.
Tentativas e validade do código
Cinco verificações incorretas bloqueiam o envio. Use attempts_left para informar quantas tentativas restam depois de um erro; no sucesso, ele também é zero.
O prazo padrão é 10 minutos, configurável na operação. Use expires_at retornado pela API. Reenvio cria outro código, com outro ID e outra chave de idempotência.
O endpoint de verificação não recebe um parâmetro para aumentar tentativas ou estender o prazo.
Limites de formato
| Dado | Limite |
|---|---|
| Corpo JSON | 64 KiB por requisição. |
| Idempotency-Key | 255 bytes após trim. |
| Código próprio no envio | De 4 a 10 dígitos, como string. |
| Idioma canônico | pt-BR ou en. |
| Destinatário | Telefone válido com + e código do país. |
Formato inválido retorna 422. Corrija o corpo antes de repetir a chamada; uma retentativa sem alteração não resolve um erro de validação.