Cadastro de Webhook com Autenticação Via Token - JWT

Nesse artigo você irá aprender como:

  • O que é autenticação JWT?
  • Por que usar o JWT?
  • Como funciona a autenticação de JWT nos webhooks da Celcoin?

Pré-requisitos para implementação

  • Possuir uma chave api da Celcoin, para mais informações acessar esse link
  • Ter familiaridade com o padrão REST usando o protocolo OAuth 2.0.
  • Ter o produto/solução contratado e habilitado em produção.
    • Caso queira usar a funcionalidade em ambiente produtivo, por favor entre em contato com a nossa equipe comercial através do e-mail [email protected]. Para dúvidas técnicas, basta entrar em contato com o suporte através do link.

O que é Autenticação JWT?

JWT (JSON Web Token) é um método para realizar autenticação entre duas partes por meio de um token assinado que autentica uma requisição web. Esse token é um código que armazena objetos JSON com os dados que permitem a autenticação da requisição.

Por que Usar o JWT?

Ao utilizar o JWT, adicionamos uma camada a mais de segurança na troca de mensagens da aplicação, garantindo que somente requisições autorizadas e autenticadas cheguem até você, ou seja aumentando a segurança e confiabilidade.

Como funciona a autenticação JWT nos webhooks da Celcoin?

Na API da Celcoin, essa funcionalidade está disponível na chamada de Registrar Webhook Com Token

Modelo de requisição do registro da autenticação JWT

{
  "url": "https://gatilho.com.br",
  "url_token": "https://gerartokengatilho.com.br",
  "client_id": "d35f22170e.meucarrosemdebito.celcoinapi.v5",
  "client_secret": "777f7e971374e03ae92128c10ab45e677oi5ce97f684fde8c527b123456789f",
  "content_type": "application/x-www-form-urlencoded",
  "token_type": "Bearer",
  "grant_type": "client_credentials",
  "token_field": "access_token",
  "handles": [
    {
      "name": "Escope",
      "value": "Débito Veicular"
    }
  ]
}

📘

Os dados informados no modelo de requisição são somente de exemplo.

Modelo de retorno

{
    "message": "Nova URL atualizada com sucesso",
    "errorCode": "000"
}

📘

Após o cadastro já será possível a Celcoin autenticar em seu ambiente e você receber as notificações do produto de Débito Veicular.

Tabela Descritiva dos Campos da Requisição:

CampoDescriçãoTipoObrigatório
urlEndereço para recebimento de mensagens assíncronas.StringTrue
url_tokenEndereço do serviço para geração do tokenStringTrue
client_idIdentificação única para integração com a plataforma.StringTrue
client_secretChave privada para a integração com o serviço.StringTrue
content_typeO tipo de conteúdo que será enviado para o endereço do serviço de token. Ex:. application/json ou application/x-www-form-urlencodedStringTrue
token_typeTipo do token. Ex:. BearerStringTrue
grant_typeUsado em cenários de refresh token. Ex:. client_credentialsStringTrue
token_fieldNome do campo do token no retorno da requisição de geração para armazenamento interno.StringTrue
handlesObjeto para identificação de algum processo interno. Ex: Produto, Escopo do Projeto, Equipe, Serviço e etc..List<KeyValuePair<String, String>>False