Consumir API de conciliação da Stone
rogermelloarchitect opened this issue · 3 comments
Olá, estou consumindo a API de conciliação da Stone mas um dos endpoints, usando Get, sempre me retorna o mesmo erro: Authentication information is not given in the correct format. Check the value of Authorization header. Segue o código utilizado:
LResponse := TRequest.New.BaseURL('https://conciliation.stone.com.br/v1/merchant/{affiliationCode}/conciliation-file/{referenceDate}')
.Accept('application/xml')
.TokenBearer('99c999ad-bf99-9999-b999-d99a999af999')
.AddHeader('X-Authorization-Raw-Data', '9999E99ECF999999BDA99C99DDD9999F', [])
.AddHeader('X-Authorization-Encrypted-Data', '099cf99ca9999cad9999f99b999f9dc9c999999ce99dcfc99999999b999999b9b9999999999c99f999999ded9999e999999999ebf999ab9c39999999ea9cf299', [])
.AddParam('affiliationCode', '999999999', pkURLSEGMENT)
.AddParam('referenceDate', '20230322', pkURLSEGMENT)
.Get;
O problema é que, num outro endpoint também usando Get, passo os mesmos parâmetros acima no Header e a requisição retorna a resposta com exito.
O que pode estar acontecendo?
Adicionei os novos parâmetros no Header "Cache-Control = no-store" e "X-Accept-Redirect = false", vi que a requisição efetua um redirecionamento para o servidor de arquivos, então, desativando o redirect a requisição é feita diretamente no servidor de arquivos.
Vlw pelo espaço e pela ótima ferramenta!!!
Olá, Roger,
Sou novo por aqui e não consegui lhe ajudar, mas que bom que deu certo!
Muito, mas muito obrigado mesmo, por você ter perdido um pouco do seu tempo e retornado aqui para deixar a solução, mesmo não tendo recebido ajuda.
Sua contribuição ajudará a muitas pessoas.
É eu não faria ideia de que faltava os headers informados sem olhar a documentação. Que bom que deu certo e como disse o @josedachao obrigado por retornar com a solução, acredito que vá ajudar outras pessoas caso tentem consumir a mesma API e se depararem com o mesmo problema.