Para gerar o token JWT, é necessário efetuar a requisição utilizando HTTPS e possuir um certificado válido no MK-Auth.
Para consumir a API do sistema, você precisará de um token de acesso. Para gerar um token de acesso, siga estas etapas:
No menu CADASTROS procure por > Controle de usuarios. Escolha usuario que deseja e clique em API
Antes de consumir os exemplos a seguir, é necessário realizar duas ações: cadastrar planos no sistema e habilitar o método GET no perfil do usuário do sistema onde foram obtidos o 'client_id' e 'client_secret'. Para obter mais informações sobre os controles permitidos, consulte este link
Os exemplos a seguir servem apenas para testar o funcionamento da API, gerando o token de acesso e usando-o para fazer a consulta na API de planos, como demonstração.
O próximo passo será criar um token para acessar a API usando autenticação Basic Auth enviando o client_id e client_secret no header da requisição. retornando o Token JWT.
curl -u [Client_Id]
curl -u Client_Id_662eaa47199461d01a623884080934ab
eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzUxMiJ9.eyJ1c3VhcmlvIjoiODRiYTJmNDEwNTljOTZkYjcxZjIzYmEyN2U0N2EyMzZlNTdiYzBjMCIsImhvc3QiOiIxOTIuMTY4Ljg4LjEwMCIsImlhdCI6MTY5ODMzMTYxNiwiZXhwIjoxNjk4MzMyMjE2fQ.MuiFrpEaXAauJF2DbBDQ2_rMqLIgH1_6IqMuUjUSNuD1BStavrPrZmsgh3udMePFziKmSnA1wS0aSJEL7aF33A
Agora que o JWT já foi gerado, vamos usá-lo em nossa requisição. Como exemplo, vamos consumir a API de planos.
curl -H 'Authorization: Bearer [JWT]' -i 'https://[IP_MK-AUTH]/api/plano/listagem'
curl -H 'Authorization: Bearer eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzUxMiJ9.eyJ1c3VhcmlvIjoiODRiYTJmNDEwNTljOTZkYjcxZjIzYmEyN2U0N2EyMzZlNTdiYzBjMCIsImhvc3QiOiIxOTIuMTY4Ljg4LjEwMCIsImlhdCI6MTY5ODQyOTM3MCwiZXhwIjoxNjk4NDI5OTcwfQ.m-E4ixjp9-FtZeXGQzK89ZdyY5xDa53TXbCdH1uU_W2kV4WZNYxw05rY5flERXhjFwqTxQyJ131wsSE7XctGJQ' -i \
-k 'https://192.168.88.2/api/plano/listagem'
Os dados retornados estão em formato JSON, como no exemplo abaixo:
{"planos":[{"uuid":"C96F745E-1F0F-4430-9F01-341FD4DB9F51","nome":"20_MEGA_RURAL","valor":"70.00","velup":"60000","veldown":"30000","prioridade":"8","descricao":"- Acesso em banda larga.\r\n- Conex\u00e3o 24 horas na fibra.\r\n- Velocidade de acesso garantida no plano.\r\nConnection"},{"uuid":"C3D1FEA6-00EE-40BF-ADC9-C4631B99AA96","nome":"215Mbps_Fibra","valor":"110.00","velup":"215000","veldown":"150000","prioridade":"8","descricao":"- Acesso em banda larga.\r\n- Conex\u00e3o 24 horas na fibra.\r\n- Velocidade de acesso garantida no plano."}]}
Fazer a requisição do token JWT no Postman é bastante simples. Basta realizar uma requisição GET para o endpoint 'http://{IP-MK-Auth}/api/', selecionar o tipo de autenticação Basic Auth na aba Authorization e inserir o client_id no campo Username e o client_secret no campo Password. Para enviar sua requisição, basta clicar em 'Send'.
Utilizando o token gerado anteriormente no Postman, é possível fazer uma requisição GET para o endpoint 'https://{ip_MK-Auth}/api/plano/listagem', selecionar o tipo de autenticação como Bearer Token na aba Authorization e inserir o JWT gerado para consultar os planos cadastrados no sistema.