A RyzeAPI usa dois tipos de token para autenticar cada requisição. Todos são enviados no headerDocumentation Index
Fetch the complete documentation index at: https://docs.ryzeapi.cloud/llms.txt
Use this file to discover all available pages before exploring further.
token. Entenda quando usar cada um e como tratar os erros mais comuns.
Dois tipos de token
TokenAccount
É o seu token principal. Com ele você cria e administra suas instâncias de WhatsApp.Escopo: sua conta inteira, todas as instâncias que ela possui.Quando usar: criar uma instância, listar todas as suas instâncias, deletar uma instância, ou qualquer operação em que você precise agir como “dono da conta”.
TokenInstance
Gerado automaticamente quando você cria uma instância nova. Cada instância tem o seu.Escopo: apenas aquela instância específica.Quando usar: operações do dia a dia, enviar mensagem, criar grupo, configurar webhook, ler contatos, etc. É o token que você vai usar em 99% das chamadas.
Ciclo de vida dos tokens
Você recebe seu TokenAccount
É entregue quando sua conta é criada. Guarde em local seguro, ele não pode ser recuperado depois.
Crie uma instância
Chame
POST /api/instance/new enviando seu TokenAccount. A resposta traz o campo data.token, que é o TokenInstance daquela instância.Use o TokenInstance no dia a dia
A partir daí, toda operação sobre aquela instância (mandar mensagem, ler contatos, configurar webhook) usa o TokenInstance.
Três formas de enviar o token
Recomendamos sempre usar o headertoken. As outras formas existem apenas para casos específicos.
Header token (padrão recomendado)
Header Authorization: Bearer (compatibilidade)
Caso sua ferramenta só permita o padrão Bearer.
Query string ?token= (apenas WebSocket em navegador)
Usado quando não é possível enviar headers, o caso típico é WebSocket em JavaScript do browser, já que new WebSocket(...) não aceita headers customizados.
Quem pode fazer o quê
Com TokenAccount
Com TokenAccount
- Criar novas instâncias (
POST /api/instance/new) - Listar todas as suas instâncias (
GET /api/instance/list) - Operar qualquer endpoint
:instancedas suas próprias instâncias (enviar mensagem, gerenciar grupos, etc.) - Deletar uma instância sua (
DELETE /api/instance/delete/:instance)
Com TokenInstance
Com TokenInstance
- Qualquer endpoint
:instanceda própria instância: enviar mensagem, ler contatos, configurar webhook, criar grupo, etc. - Inspecionar o estado atual da própria instância (
GET /api/instance/list) - Abrir conexão WebSocket para receber eventos em tempo real
Não permitido
Não permitido
- TokenInstance não cria instâncias novas, use TokenAccount para isso
- TokenInstance de uma instância não opera outra instância, cada token só vale para a sua própria
- TokenAccount/TokenInstance de uma conta não operam instâncias de outra conta
Proteção de acesso (ownership)
A RyzeAPI verifica automaticamente, antes de cada operação, se o token enviado tem permissão para aquele recurso específico. Isso impede que um token vaze acesso a instâncias de terceiros. Exemplos do que é bloqueado automaticamente:- Tentar enviar mensagem na instância
Busando o token da instânciaA→403 - Tentar deletar uma instância que pertence a outra conta →
403 - TokenAccount tentando criar mais instâncias do que sua cota permite →
403
Erros de autenticação
Todas respostas de erro de auth vêm com HTTP401 (token inválido) ou 403 (sem permissão) e seguem o formato:
Mensagens que você pode encontrar
| HTTP | Mensagem | Causa mais provável |
|---|---|---|
| 401 | Missing token in header | Você não enviou o header token |
| 401 | Missing token in header, Authorization header, or query parameter | Nenhuma das 3 formas de token foi usada |
| 401 | Invalid token | Token não existe, está errado, ou foi revogado |
| 401 | Invalid instance token | O token não corresponde à instância no path |
| 403 | Instance token does not match requested instance | Está usando o TokenInstance de A no path :instance=B |
| 403 | Instance does not belong to your account | TokenAccount tentando operar instância de outra conta |
| 403 | Account instance quota exceeded | Atingiu o limite de instâncias da sua conta |
Segurança: boas práticas
Trate todo token como credencial, armazene em variáveis de ambiente ou cofre de segredos, nunca no frontend ou em repositórios públicos.
Use um TokenInstance por instância, se um vazar, você revoga só aquele.
Use HTTPS em produção, a RyzeAPI aceita apenas conexões seguras.
Use o header
token (não a query string) na maioria dos casos, headers não vão parar em logs de proxy.Monitore o header
X-RateLimit-Remaining para evitar ser bloqueado por excesso de requisições.Próximo
Tipos de erro
Os formatos de resposta e como interpretar cada código HTTP.
Rate limit
Quanto você pode chamar por minuto e como reagir ao
429.