configurei os componentes conforme a instrucao abaixo.
Uma vez de posse do token de acesso, você pode fazer requisições autenticadas à API da Nuvem Fiscal. Para isso basta criar a sua requisição HTTP à API normalmente, e adicionar o header Authorization , com valor Bearer seguido do token (atenção ao espaço entre o texto Bearer e o token).
configurei meus componentes direto no delphi da seguinte forma…
RESTClient1.BaseURL := ‘https://api.nuvemfiscal.com.br/cep’;
// Configurei o RESTRequest
RESTRequest1.Resource := ‘04094000’; // Parte do URL final
RESTRequest1.Method := rmGET;
// Adicionei o cabeçalho de autorização
RESTRequest1.Params.Clear;
RESTRequest1.Params.AddHeader(‘Authorization’, ‘Bearer eyJ0eXAiOiJKV1QiLCJraWQiOiIwMWIwNDFkMWQ2MTU0NjA0NzNkMWI1NGFhOGRlNGQ1NyIsImFsZyI6IlJTMjU2In0…’); // coloquei o token certo, claro.
RESTRequest1.Execute;
ai recebo o retorno ‘unauthorized’.
Meu caro… preferi fazer no delphi raiz, ainda apanho da P.O.O. e nao vou ter tempo pra aprender.
mas… o que me faltou aqui? tem parametro que preciso passar pro componente?
Pelo que vi, sua configuração parece estar correta. Como você mencionou que está recebendo o retorno “unauthorized”, seria interessante realizar um teste simples usando esse mesmo token em uma requisição via Postman ou cURL, para verificar se o problema está na autenticação ou na configuração dos componentes no Delphi.
Exemplo usando cURL:
curl -X GET "https://api.nuvemfiscal.com.br/cep/04094000" \
-H "Authorization: Bearer eyJ0eXAioiJKV1QiLCJraWQiOiIw..."
Ou no Postman, basta configurar uma requisição GET para a URL acima e adicionar o token no cabeçalho Authorization.
Se a requisição funcionar em uma dessas ferramentas, isso pode indicar que o problema está na implementação da requisição no Delphi. Caso contrário, poderemos investigar se o token possui algum problema.
Bom dia, tudo bem?
A Api funcionou no Delphi. Até agora configurei as ‘GETS’ .
o que eu fiz:
Como funcionou no postman e nao funcionou no RestDebugger, eu perguntei pro chatgpt.
Ele tb mandou eu testar no postman, me deu uma sugestoes de onde procurar o erro.
No RestDebugger vc gera um json com os parametros, eu mandei esse json pra ele e ele sugeriu corrigir a propriedade ‘encode’. Aí deu certo.
Aparentemente, o problema está no modo como o Delphi REST Debugger lida com o cabeçalho Authorization, ou na configuração do Bearer Token. Embora o Postman funcione corretamente, alguns detalhes na ferramenta do Delphi podem estar configurados de forma incorreta.
Aqui estão algumas coisas que você pode tentar:
Autenticação no REST Debugger:
Na configuração que você forneceu, o campo auth.method está como “NONE”, o que significa que o REST Debugger não está tratando o token como uma autenticação padrão. Porém, você está configurando o token manualmente no cabeçalho. Então, é importante manter a autenticação desabilitada (como está), mas garantir que o token seja passado corretamente.
Configuração do Cabeçalho “Authorization”:
Certifique-se de que o token está sendo configurado adequadamente como “Bearer ” no cabeçalho.
Parece que você já está enviando o token corretamente no cabeçalho como “kind”:“HEADER”. Entretanto, o problema pode estar relacionado com o campo “encode”:true. Nesse caso, não há necessidade de codificar o token, já que ele já está no formato adequado.
o problema pode estar relacionado com o campo “encode”:true.
aqui estava o problema. por isso retornava unauthorized.
Pois é… vou seguir em frente, já montei os componentes com GET e POST. espero hj conseguir gerar o mdf-e.