Skip to Content
SegurançaValidar Token

Validação da Autenticação

Sempre que receber um token pela primeira vez em sua aplicação, é importante que faça a validação do mesmo.

A validação é sempre feita através do access_token retornado no login.

Montando a requisição

Método da requisição

POST

Endereço da requisição

Desenvolvimento:

https://apidsv.unimedbh.io/security/oauth/validate

Homologação:

https://apihml.unimedbh.io/security/oauth/validate

Produção:

https://api.unimedbh.io/security/oauth/validate

Cabeçalho da requisição

{ "Content-Type": "application/json" }

Corpo da requisição

{ "access_token": "eyJhbGciOiJSUzI1NiIsInR5cCI6IkpXVCJ9.eyJleHAiOjE3MDMwMDY2OTEsInVzZXJfbmFtZSI6InRlc3RlQGdtYWlsLmNvbSIsImp0aSI6ImVmYzg2YjdjLWJhMmMtNGM2Zi1hMWJiLWEzZjMxYWY2NjE3MiIsImNsaWVudF9pZCI6ImFjZXNzb2RzdiIsInNjb3BlIjpbInJlYWQiLCJ3cml0ZSJdfQ.sSP2z6hRHWlcXDGQOi1DnkSqxP2YKkew_BTOLKWOMUPhEMkHvHOoKplMnynr6kp3rcJJj0tpDwAHloNKLGIaSAuK1WgXC8YxOnq279GEOd2uu7b2ayx7xoaHV5Ar9hr3194S5gS9X6sIGUYsQJX0wUu6ZWeOOovAMticvcBI7RbVbMbRBJW4Lvt8oMAx7eou_tFGze3mT3Qe3YqXChzhws-wRhxt17IjwJZNQ2QpnpF4sp6DKmKRTSX1Rhvfe7SzVNFdqj7U6SII_OMv6gqtnKe4an605sOPMyJAZkmeI-SE_46EissjCgzY6DVZwkDEnSviyuIjEIQ34dKHLFsKUQ" }

Respostas da requisição

200 - Sucesso

{ "birthday": "26/06/1936", "roles": [], "fullName": "MARGARIDA RAMOS DE PAULA", "token_type": "bearer", "cookies": [ "amlbcookiehx=cluster_openam.unisrv1192; Domain=.unimedbh.com.br; Path=/", "amlbcookiehx=cluster_openam.unisrv1192; Domain=.unimedbh.io; Path=/" ], "token": "AQIC5wM2LY4SfcyS8UGjl8mQEGH-Y0q0RXBoezMxrDFWiak.*AAJTSQACMDIAAlNLABMtMzQwMzYxMDcxMjM1MTg2OTI3AAJTMQACMDE.*", "access_token": "eyJhbGciOiJSUzI1NiIsInR5cCI6IkpXVCJ9.eyJleHAiOjE3MDMwMDY2OTEsInVzZXJfbmFtZSI6InRlc3RlQGdtYWlsLmNvbSIsImp0aSI6ImVmYzg2YjdjLWJhMmMtNGM2Zi1hMWJiLWEzZjMxYWY2NjE3MiIsImNsaWVudF9pZCI6ImFjZXNzb2RzdiIsInNjb3BlIjpbInJlYWQiLCJ3cml0ZSJdfQ.sSP2z6hRHWlcXDGQOi1DnkSqxP2YKkew_BTOLKWOMUPhEMkHvHOoKplMnynr6kp3rcJJj0tpDwAHloNKLGIaSAuK1WgXC8YxOnq279GEOd2uu7b2ayx7xoaHV5Ar9hr3194S5gS9X6sIGUYsQJX0wUu6ZWeOOovAMticvcBI7RbVbMbRBJW4Lvt8oMAx7eou_tFGze3mT3Qe3YqXChzhws-wRhxt17IjwJZNQ2QpnpF4sp6DKmKRTSX1Rhvfe7SzVNFdqj7U6SII_OMv6gqtnKe4an605sOPMyJAZkmeI-SE_46EissjCgzY6DVZwkDEnSviyuIjEIQ34dKHLFsKUQ", "uid": "teste@gmail.com", "scope": "read write", "name": "MARGARIDA", "cpf": "52253155691", "personId": 3181886, "expires_in": 2675, "jti": "efc86b7c-ba2c-4c6f-a1bb-a3f31af66172", "email": "teste@gmail.com", "fullRoles": [] }

Caso o access_token seja válido, todos os dados da sessão retornados da mesma maneira como no login, só que agora com a propriedade expires_in refletindo o tempo restante para expiração do token.

400 - Dados Inválidos

{ "message": "Violação: 'accessToken' must not be empty." }

401 - Não autorizado

{ "date": "19/12/2023 16:29:32", "message": "Unauthorized!", "details": [] }

403 - Acesso negado

{ "date": "19/12/2023 16:29:32", "message": "Forbidden!", "details": [] }

Exemplos da requisição

HTTP

POST /security/oauth/validate HTTP/1.1 Host: apihml.unimedbh.io Content-Type: application/json Content-Length: 593 { "access_token": "eyJhbGciOiJSUzI1NiIsInR5cCI6IkpXVCJ9.eyJleHAiOjE3MDMwMDY2OTEsInVzZXJfbmFtZSI6InRlc3RlQGdtYWlsLmNvbSIsImp0aSI6ImVmYzg2YjdjLWJhMmMtNGM2Zi1hMWJiLWEzZjMxYWY2NjE3MiIsImNsaWVudF9pZCI6ImFjZXNzb2RzdiIsInNjb3BlIjpbInJlYWQiLCJ3cml0ZSJdfQ.sSP2z6hRHWlcXDGQOi1DnkSqxP2YKkew_BTOLKWOMUPhEMkHvHOoKplMnynr6kp3rcJJj0tpDwAHloNKLGIaSAuK1WgXC8YxOnq279GEOd2uu7b2ayx7xoaHV5Ar9hr3194S5gS9X6sIGUYsQJX0wUu6ZWeOOovAMticvcBI7RbVbMbRBJW4Lvt8oMAx7eou_tFGze3mT3Qe3YqXChzhws-wRhxt17IjwJZNQ2QpnpF4sp6DKmKRTSX1Rhvfe7SzVNFdqj7U6SII_OMv6gqtnKe4an605sOPMyJAZkmeI-SE_46EissjCgzY6DVZwkDEnSviyuIjEIQ34dKHLFsKUQ" }

cURL

curl --location 'https://apihml.unimedbh.io/security/oauth/validate' \ --header 'Content-Type: application/json' \ --data '{ "access_token": "eyJhbGciOiJSUzI1NiIsInR5cCI6IkpXVCJ9.eyJleHAiOjE3MDMwMDY2OTEsInVzZXJfbmFtZSI6InRlc3RlQGdtYWlsLmNvbSIsImp0aSI6ImVmYzg2YjdjLWJhMmMtNGM2Zi1hMWJiLWEzZjMxYWY2NjE3MiIsImNsaWVudF9pZCI6ImFjZXNzb2RzdiIsInNjb3BlIjpbInJlYWQiLCJ3cml0ZSJdfQ.sSP2z6hRHWlcXDGQOi1DnkSqxP2YKkew_BTOLKWOMUPhEMkHvHOoKplMnynr6kp3rcJJj0tpDwAHloNKLGIaSAuK1WgXC8YxOnq279GEOd2uu7b2ayx7xoaHV5Ar9hr3194S5gS9X6sIGUYsQJX0wUu6ZWeOOovAMticvcBI7RbVbMbRBJW4Lvt8oMAx7eou_tFGze3mT3Qe3YqXChzhws-wRhxt17IjwJZNQ2QpnpF4sp6DKmKRTSX1Rhvfe7SzVNFdqj7U6SII_OMv6gqtnKe4an605sOPMyJAZkmeI-SE_46EissjCgzY6DVZwkDEnSviyuIjEIQ34dKHLFsKUQ" }'

JavaScript

const myHeaders = new Headers(); myHeaders.append("Content-Type", "application/json"); const raw = JSON.stringify({ "access_token": "eyJhbGciOiJSUzI1NiIsInR5cCI6IkpXVCJ9.eyJleHAiOjE3MDMwMDY2OTEsInVzZXJfbmFtZSI6InRlc3RlQGdtYWlsLmNvbSIsImp0aSI6ImVmYzg2YjdjLWJhMmMtNGM2Zi1hMWJiLWEzZjMxYWY2NjE3MiIsImNsaWVudF9pZCI6ImFjZXNzb2RzdiIsInNjb3BlIjpbInJlYWQiLCJ3cml0ZSJdfQ.sSP2z6hRHWlcXDGQOi1DnkSqxP2YKkew_BTOLKWOMUPhEMkHvHOoKplMnynr6kp3rcJJj0tpDwAHloNKLGIaSAuK1WgXC8YxOnq279GEOd2uu7b2ayx7xoaHV5Ar9hr3194S5gS9X6sIGUYsQJX0wUu6ZWeOOovAMticvcBI7RbVbMbRBJW4Lvt8oMAx7eou_tFGze3mT3Qe3YqXChzhws-wRhxt17IjwJZNQ2QpnpF4sp6DKmKRTSX1Rhvfe7SzVNFdqj7U6SII_OMv6gqtnKe4an605sOPMyJAZkmeI-SE_46EissjCgzY6DVZwkDEnSviyuIjEIQ34dKHLFsKUQ" }); const requestOptions = { method: 'POST', headers: myHeaders, body: raw, redirect: 'follow' }; fetch("https://apihml.unimedbh.io/security/oauth/validate", requestOptions) .then(response => response.text()) .then(result => console.log(result)) .catch(error => console.log('error', error));

Node.js

const axios = require('axios'); const data = JSON.stringify({ "access_token": "eyJhbGciOiJSUzI1NiIsInR5cCI6IkpXVCJ9.eyJleHAiOjE3MDMwMDY2OTEsInVzZXJfbmFtZSI6InRlc3RlQGdtYWlsLmNvbSIsImp0aSI6ImVmYzg2YjdjLWJhMmMtNGM2Zi1hMWJiLWEzZjMxYWY2NjE3MiIsImNsaWVudF9pZCI6ImFjZXNzb2RzdiIsInNjb3BlIjpbInJlYWQiLCJ3cml0ZSJdfQ.sSP2z6hRHWlcXDGQOi1DnkSqxP2YKkew_BTOLKWOMUPhEMkHvHOoKplMnynr6kp3rcJJj0tpDwAHloNKLGIaSAuK1WgXC8YxOnq279GEOd2uu7b2ayx7xoaHV5Ar9hr3194S5gS9X6sIGUYsQJX0wUu6ZWeOOovAMticvcBI7RbVbMbRBJW4Lvt8oMAx7eou_tFGze3mT3Qe3YqXChzhws-wRhxt17IjwJZNQ2QpnpF4sp6DKmKRTSX1Rhvfe7SzVNFdqj7U6SII_OMv6gqtnKe4an605sOPMyJAZkmeI-SE_46EissjCgzY6DVZwkDEnSviyuIjEIQ34dKHLFsKUQ" }); const config = { method: 'post', maxBodyLength: Infinity, url: 'https://apihml.unimedbh.io/security/oauth/validate', headers: { 'Content-Type': 'application/json' }, data : data }; axios.request(config) .then((response) => { console.log(JSON.stringify(response.data)); }) .catch((error) => { console.log(error); });

PHP

<?php $curl = curl_init(); curl_setopt_array($curl, array( CURLOPT_URL => 'https://apihml.unimedbh.io/security/oauth/validate', CURLOPT_RETURNTRANSFER => true, CURLOPT_ENCODING => '', CURLOPT_MAXREDIRS => 10, CURLOPT_TIMEOUT => 0, CURLOPT_FOLLOWLOCATION => true, CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1, CURLOPT_CUSTOMREQUEST => 'POST', CURLOPT_POSTFIELDS =>'{ "access_token": "eyJhbGciOiJSUzI1NiIsInR5cCI6IkpXVCJ9.eyJleHAiOjE3MDMwMDY2OTEsInVzZXJfbmFtZSI6InRlc3RlQGdtYWlsLmNvbSIsImp0aSI6ImVmYzg2YjdjLWJhMmMtNGM2Zi1hMWJiLWEzZjMxYWY2NjE3MiIsImNsaWVudF9pZCI6ImFjZXNzb2RzdiIsInNjb3BlIjpbInJlYWQiLCJ3cml0ZSJdfQ.sSP2z6hRHWlcXDGQOi1DnkSqxP2YKkew_BTOLKWOMUPhEMkHvHOoKplMnynr6kp3rcJJj0tpDwAHloNKLGIaSAuK1WgXC8YxOnq279GEOd2uu7b2ayx7xoaHV5Ar9hr3194S5gS9X6sIGUYsQJX0wUu6ZWeOOovAMticvcBI7RbVbMbRBJW4Lvt8oMAx7eou_tFGze3mT3Qe3YqXChzhws-wRhxt17IjwJZNQ2QpnpF4sp6DKmKRTSX1Rhvfe7SzVNFdqj7U6SII_OMv6gqtnKe4an605sOPMyJAZkmeI-SE_46EissjCgzY6DVZwkDEnSviyuIjEIQ34dKHLFsKUQ" }', CURLOPT_HTTPHEADER => array( 'Content-Type: application/json' ), )); $response = curl_exec($curl); curl_close($curl); echo $response;

Java

Unirest.setTimeouts(0, 0); HttpResponse<String> response = Unirest.post("https://apihml.unimedbh.io/security/oauth/validate") .header("Content-Type", "application/json") .body("{\n\t\"access_token\": \"eyJhbGciOiJSUzI1NiIsInR5cCI6IkpXVCJ9.eyJleHAiOjE3MDMwMDY2OTEsInVzZXJfbmFtZSI6InRlc3RlQGdtYWlsLmNvbSIsImp0aSI6ImVmYzg2YjdjLWJhMmMtNGM2Zi1hMWJiLWEzZjMxYWY2NjE3MiIsImNsaWVudF9pZCI6ImFjZXNzb2RzdiIsInNjb3BlIjpbInJlYWQiLCJ3cml0ZSJdfQ.sSP2z6hRHWlcXDGQOi1DnkSqxP2YKkew_BTOLKWOMUPhEMkHvHOoKplMnynr6kp3rcJJj0tpDwAHloNKLGIaSAuK1WgXC8YxOnq279GEOd2uu7b2ayx7xoaHV5Ar9hr3194S5gS9X6sIGUYsQJX0wUu6ZWeOOovAMticvcBI7RbVbMbRBJW4Lvt8oMAx7eou_tFGze3mT3Qe3YqXChzhws-wRhxt17IjwJZNQ2QpnpF4sp6DKmKRTSX1Rhvfe7SzVNFdqj7U6SII_OMv6gqtnKe4an605sOPMyJAZkmeI-SE_46EissjCgzY6DVZwkDEnSviyuIjEIQ34dKHLFsKUQ\"\n}") .asString();

C#

var client = new HttpClient(); var request = new HttpRequestMessage(HttpMethod.Post, "https://apihml.unimedbh.io/security/oauth/validate"); var content = new StringContent("{\"access_token\": \"eyJhbGciOiJSUzI1NiIsInR5cCI6IkpXVCJ9.eyJleHAiOjE3MDMwMDY2OTEsInVzZXJfbmFtZSI6InRlc3RlQGdtYWlsLmNvbSIsImp0aSI6ImVmYzg2YjdjLWJhMmMtNGM2Zi1hMWJiLWEzZjMxYWY2NjE3MiIsImNsaWVudF9pZCI6ImFjZXNzb2RzdiIsInNjb3BlIjpbInJlYWQiLCJ3cml0ZSJdfQ.sSP2z6hRHWlcXDGQOi1DnkSqxP2YKkew_BTOLKWOMUPhEMkHvHOoKplMnynr6kp3rcJJj0tpDwAHloNKLGIaSAuK1WgXC8YxOnq279GEOd2uu7b2ayx7xoaHV5Ar9hr3194S5gS9X6sIGUYsQJX0wUu6ZWeOOovAMticvcBI7RbVbMbRBJW4Lvt8oMAx7eou_tFGze3mT3Qe3YqXChzhws-wRhxt17IjwJZNQ2QpnpF4sp6DKmKRTSX1Rhvfe7SzVNFdqj7U6SII_OMv6gqtnKe4an605sOPMyJAZkmeI-SE_46EissjCgzY6DVZwkDEnSviyuIjEIQ34dKHLFsKUQ\"}", null, "application/json"); request.Content = content; var response = await client.SendAsync(request); response.EnsureSuccessStatusCode(); Console.WriteLine(await response.Content.ReadAsStringAsync());
Last updated on