Skip to main content
A API da Routa é REST sobre HTTPS, com requisições e respostas em JSON e autenticação por chave de API no formato Bearer. Esta página reúne as regras comuns a todos os endpoints. Cada endpoint tem a sua própria página, com parâmetros, exemplos e um playground para testar chamadas. A especificação OpenAPI completa está em openapi.json.

URL base

Todos os endpoints públicos ficam sob o prefixo /v1. O ambiente (produção ou teste) é definido pela chave de API, não pela URL. Veja Ambientes.
A API não define headers CORS. Chame-a sempre a partir do seu servidor e nunca de um navegador ou de um app, para não expor sua chave.

Autenticação

Envie sua chave de API no header Authorization:
Cada chave pertence a um projeto e carrega escopos. Uma rota que exige um escopo ausente na chave responde 403 insufficient_scope. Veja Chaves de API.

O que a chave de API alcança

Organizações, projetos, chaves de API, canais, membros e cobrança são gerenciados no painel, com sessão de usuário. Essas rotas não aceitam chave de API e não fazem parte desta referência.

Formato de resposta

Objeto único

Um recurso é retornado diretamente, sem envelope:

Listas

Coleções vêm dentro de um envelope com metadados de paginação:

Erro

Veja todos os campos em Erros.
Algumas respostas não seguem o envelope de lista: GET /v1/usage devolve { from_date, to_date, data } sem paginação, e GET /v1/webhook_endpoints devolve todos os endpoints de uma vez, com has_more sempre false. Confira o formato na página de cada endpoint.
Toda resposta traz o header Routa-Request-Id. Informe-o ao falar com o suporte.

Paginação

As listas usam paginação por cursor. Não há page nem offset.
GET /v1/events usa after (o id do último evento) no lugar de cursor. Veja Paginação.

Idempotência

POST /v1/messages aceita o header Idempotency-Key. Repetir a requisição com a mesma chave e o mesmo corpo devolve a resposta original, com Idempotent-Replay: true, sem criar outra mensagem. As chaves são mantidas por 24 horas. Veja Idempotência.

Limites de taxa

Os limites são por projeto, por classe de endpoint. Os headers RateLimit-Limit, RateLimit-Remaining e RateLimit-Reset vêm em toda resposta. Um 429 traz Retry-After:
Veja Limites de taxa.

Status HTTP

Convenções

Telefone

Use o formato E.164, como +5581999999999. O + inicial é opcional na entrada. As respostas trazem o número em E.164.

IDs

Os identificadores são strings opacas com um prefixo que indica o tipo.

Datas

Todas as datas e horários seguem o formato ISO 8601 em UTC, como 2026-09-04T13:22:41.031Z. Parâmetros de data simples usam YYYY-MM-DD.

Enums

Os valores de campos como status e direction são strings minúsculas. Em campos documentados como abertos, novos valores podem aparecer. Trate valores desconhecidos de forma segura.

Versionamento

A versão está na URL (/v1). Dentro da v1, as mudanças são apenas aditivas: novos endpoints, novos campos opcionais de requisição e novos campos de resposta. Qualquer outra mudança vira v2. Ignore campos desconhecidos nas respostas.

Próximos passos

Início rápido

Envie sua primeira mensagem.

Enviar mensagem

O endpoint principal da API.

Webhooks

Receba eventos de entrega e mensagens recebidas.

SDK para Node.js

Use o cliente oficial em TypeScript.