2021
Autenticação API Rest
8 de junho de 2021Antes de iniciar o desenvolvimento da autenticação com o Invoicy na integração através da API Rest, a melhor alternativa para entendimento do processo de autenticação é a geração do token no padrão JWT (JSON Web Token) (RFC – 7519) de forma manual.
Para isso, acesse o portal JWT(https://jwt.io/) e configure o painel Decoded ajustando os grupos Payload e Verify Signature.
Entendendo o grupo Payload:
- “iat”: campo numérico que deve conter a data/hora atual no fuso zero e em formato timestamp;
- “exp”: campo numérico que deve conter a data/hora atual + 120 segundos no fuso zero e em formato timestamp;
- “sub”: é uma string com o CNPJ da empresa emissora ou a chave de parceiro. Quando for gerado um token para cadastro/atualização de empresa deverá conter a chave de parceiro, no restante das situações será utilizado o CNPJ da empresa;
- “partnerKey”: é uma string com a chave de parceiro fornecida pelo InvoiCy. Quando for gerado um token para cadastro de empresa, não envie essa informação.
A geração da data/hora em timestamp pode ser realizada no portal Epoch Converter (https://www.epochconverter.com/) conforme imagem:
Entendendo o grupo Verify Signature:
No campo em que é permitida a edição, informar a chave de acesso da empresa. A chave de acesso é a chave privada fornecida pelo InvoiCy para cada empresa cadastrada. Quando for gerado um token para cadastro de empresa deverá conter a chave de acesso do parceiro. Ambas informações, chave de parceiro e chave de acesso da empresa, podem ser localizadas acessando o Painel de controle > Dados da empresa. Para mais informações, acesse o artigo: Verificando a chave de acesso da empresa.
Obs: para consulta de empresa utilizar a chave de acesso da empresa e não a chave de parceiro.
Com o preenchimento destas informações será gerado no painel Encoded o JWT a ser enviado ao Invoicy na opção Gerar Token na ferramenta Postman, utilizando-se do projeto exemplo (https://documenter.getpostman.com/view/9193875/SztEanQL?version=latest#6bf035dc-7680-439e-baab-884293b1421e).
Importante! Após a geração do JWT o sistema parceiro terá 120 segundos para envio do código ao Invoicy no campo “token”, tempo de expiração informado no parâmetro “exp”.
Com o envio do JWT serão retornados o accessToken e o refreshToken que serão utilizados para autenticação com o Invoicy no processo de envio dos documentos.
Para mais detalhes da utilização do accessToken e refreshToken confira o artigo accessToken e refreshToken.