Autenticação
Como realizar o token de autenticação no portal de documentação Rodonaves.
Toda chamada às APIs exige um token. Você envia sua credencial de API para a rota /token da API que quer usar, recebe um access_token e o envia no cabeçalho Authorization de cada requisição.
Credencial de API não é o login do portal
Você pode ter dois acessos diferentes, e eles não são intercambiáveis.
| Credencial de API | Login do portal | |
|---|---|---|
| Para que serve | Gerar o token e chamar as APIs | Entrar no dev.rodonaves.com.br para usar a Comunidade e ver o histórico de requisições |
| Quem fornece | Sua unidade de vínculo | Cadastro no próprio portal |
| Onde usar | Rota /token de cada API | Botão Log In do portal |
Se você usar o login do portal na rota /token, a geração do token falha. Use sempre o usuário e a senha de API enviados pela unidade.
Passo 1: gerar o token
Envie um POST para a rota /token da API desejada, com o corpo no formato application/x-www-form-urlencoded.
| Parâmetro | Obrigatório | Valor |
|---|---|---|
grant_type | Sim | Sempre password |
username | Sim | Usuário de API |
password | Sim | Senha de API |
auth_type | Sim | DEV |
O token de exemplo publicado hoje no portal tem validade de 8 horas.
Passo 2: usar o token
Envie o token no cabeçalho Authorization, precedido da palavra Bearer e de um espaço.
curl -X GET "https://tracking-apigateway.rte.com.br/api/v1/tracking?InvoiceKey=CHAVE_DA_NFE" \
-H "Authorization: Bearer SEU_ACCESS_TOKEN" \
-H "Accept: application/json"| Cabeçalho (Key) | Valor |
|---|---|
| Authorization | Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJuYW1laWQiOiIxIiwidW5pcXVlX25hbWUiOiJBRE1JTklTVFJBVE9SIiwiaHR0cDovL3NjaGVtYXMucnRlLmNvbS5ici9pZGVudGl0eS9jbGFpbXMvY29tcGFueWlkIjoiMSIsImh0dHA6Ly9zY2hlbWFzLnJ0ZS5jb20uYnIvaWRlbnRpdHkvY2xhaW1zL3VzZXJjb21wYW55aWQiOiItMSIsImh0dHA6Ly9zY2hlbWFzLnJ0ZS5jb20uYnIvaWRlbnRpdHkvY2xhaW1zL2lzdXNlcm1hc3RlciI6IlMiLCJodHRwOi8vc2NoZW1hcy5ydGUuY29tLmJyL2lkZW50aXR5L2NsYWltcy9hdXRodHlwZSI6IlRNUyIsIm5iZiI6MTYyNDU2MDgxMCwiZXhwIjoxNjI0NTg5NjEwLCJpYXQiOjE2MjQ1NjA4MTAsImlzcyI6InJ0ZWZyYW1ld29yayIsImF1ZCI6IjhFMUQzMEI3LTExODQtNDkxRS1CRDJGLUI5MDA3QkNDNDYwRiJ9.BuTY9wnUhvaNsQBJiLM0bSkicQbimBQq37TYFFRAM_0 |
Testando pelo portal
- Na API Reference, abra o endpoint Obter o token de acesso da API desejada.
- Preencha usuário e senha de API e clique em Try it!.
- Copie o valor de access_token, sem as aspas.
- No endpoint que você quer testar, cole o token no campo Header com o prefixo Bearer .
Erros comuns:
| Erro | Causa provável | Como resolver |
|---|---|---|
400 na rota /token | Corpo enviado como JSON ou parâmetro faltando | Envie application/x-www-form-urlencoded com todos os parâmetros |
400 ou 401 na rota /token | Usuário ou senha incorretos, ou login do portal usado no lugar da credencial de API | Use a credencial enviada pela unidade |
| 401 em um endpoint | Token ausente, sem o prefixo Bearer, expirado ou gerado em outra API | Gere um novo token na URL base correta |
| 403 em um endpoint | Seu usuário não tem acesso a esse recurso | Peça a liberação à unidade de vínculo |
Boas práticas!• Reutilize o token até ele expirar. Não gere um token novo a cada requisição.
• Ao receber 401, gere um novo token e repita a chamada uma única vez.
• Guarde usuário e senha em variáveis de ambiente ou em um cofre de segredos. Nunca os coloque em código de front-end.
Exemplos:
Etapa 1

Acesse a opção "Autenticação" da API desejada, preencha o usuário e senha e em seguida selecione "Try it!".
Etapa 2

Copie o conteúdo da propriedade "access_token" (sem considerar as aspas) e cole no cabeçalho da requisição que será apresentado na próxima etapa.
Etapa 3

Preencha o campo "Header" com "Bearer" e cole o token copiado na etapa anterior
Updated 5 days ago
