A autenticação externa do Portal Prestador permite que aplicações terceiras possam se integrar e incorporar (embed) funcionalidades do portal em suas próprias interfaces. Esta documentação detalha o processo de autenticação, os campos necessários, o fluxo de operação e exemplos de implementação.
O processo de autenticação externa consiste em:
POST https://portal.totvs.com.br/totvs-hgp-haw-auth/api/external-authentication |
Content-Type: application/json |
curl --location 'http://52.20.6.162:8080/totvs-hgp-haw-auth/api/external-authentication' \
--header 'Accept: /' \
--header 'Accept-Language: pt-BR,pt;q=0.9,en-US;q=0.8,en;q=0.7' \
--header 'Cache-Control: no-cache' \
--header 'Connection: keep-alive' \
--header 'Content-Type: application/json' \
--header 'Origin: https://pmedfake.totvs.com.br:4433' \
--header 'Pragma: no-cache' \
--header 'Referer: https://pmedfake.totvs.com.br:4433/' \
--header 'Sec-Fetch-Dest: empty' \
--header 'Sec-Fetch-Mode: cors' \
--header 'Sec-Fetch-Site: same-site' \
--header 'User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/134.0.0.0 Safari/537.36' \
--header 'sec-ch-ua: "Chromium";v="134", "Not:A-Brand";v="24", "Google Chrome";v="134"' \
--header 'sec-ch-ua-mobile: ?0' \
--header 'sec-ch-ua-platform: "Windows"' \
--data '{
"user": "31921",
"password": "174b063a7d7e684004d94f4965b52ad9",
"cnpjClinic": "03.151.186/0001-78",
"clinic": 10026,
"provider": 31921,
"beneficiaryCard": "01200108959000048"
}' |
O corpo da requisição deve conter os seguintes campos em formato JSON:
| Campo | Tipo | Obrigatório | Descrição |
|---|---|---|---|
| user | String | Sim | Nome de usuário registrado no Portal Prestador |
| password | String | Sim | Senha do usuário (hash MD5) |
| cnpjClinic | String | Não | CNPJ da clínica apenas números (obrigatório apenas se não informar clinic) |
| clinic | Number | Não | Código da clínica (obrigatório apenas se não informar cnpjClinic |
| provider | Number | Não | Código do prestador |
| beneficiaryCard | String | Não | Número do cartão de beneficiário |
Exemplo de corpo da requisição:
{
"user": "nome.usuario",
"password": "174b063a7d7e684004d94f4965b52ad9",
"cnpjClinic": "03151186000178",
"clinic": 10026,
"provider": 31921,
"beneficiaryCard": "01200108959000048"
} |
Observação: A senha deve ser enviada em formato hash MD5.
{
"companyId": "120",
"secretary": "daniel.jose",
"beneficiaryCard": "01200108959000048",
"provider": 31921,
"clinic": 10026,
"authorized": true,
"token": "eyJhbGciOiJSUzI1NiJ9.eyJzdWIiOiIwMjAwMTBhQUlXWVhaQ2ZUSjNDY21aWmNxVnFRMzMiLCJpYXQiOjE3NDM1MTEyNTMsImlzc3VlciI6ImRhdGFzdWwiLCJpc3MiOiJkYXRhc3VsIiwianRpIjoiMGE2NDYyNzMtZjNkZC00ODY5LWIyMDEtNGU2YTVhNmQ1MDllIiwiZXhwIjoxNzQzNTEzMDUzLCJhdWQiOiJsb2NhbGhvc3QuODI4MCIsInNjb3BlIjpbIi9wb3J0cHJlc3QiXX0.GPHI8uvCB7APDiB_3g7DWVB25sBOi_GV7xGJ2B2lsYu3oVW0CRVVEoq6hT1bkJBkTcDHnOtUrNrDL761V56IqUJdXQ3OO_ToZv3t94nu4VERGNYWgqPkLHohQvnLjdlFAS5mkjVdZ545L-jOyHGrDuVzf9VzqkjpGVnfJBgkajYar1BJePtf9oiFWkBu8Pn5OxeQVFjhFI07WKHlPomEfnDYLSj6g8yTyitbo_aM4nO82EMiJGVSkBYbBqZJdmS2IzmRAA27Pam5KCUkYKl3INnlUu1P0FVwgiF4EZdklMMYRIybseYetfwboYmpyWsoBE2WMjHsGhOgGlfZSnY0ig",
"hybridToken": "eyJhbGciOiJIUzI1NiJ9.eyJwYXNzd29yZCI6IjE3NGIwNjNhN2Q3ZTY4NDAwNGQ5NGY0OTY1YjUyYWQ5Iiwic2VjcmV0YXJ5IjoiZGFuaWVsLmpvc2UiLCJiZW5lZmljaWFyeUNhcmQiOiIwMTIwMDEwODk1OTAwMDA0OCIsInByb3ZpZGVyIjozMTkyMSwiY2xpbmljIjoxMDAyNiwiZXhwIjoxNzQzNTE0ODU5LCJpYXQiOjE3NDM1MTEyNTl9.QKNHJLfAyxYgrHbCZhptRs6wM41VGnwel2LS93HyzEI",
"datasulToken": "eyJhbGciOiJSUzI1NiJ9.eyJzdWIiOiJhY2FhZmM1ZS04NWYyLTA3YmYtNDIxNC01ZDk5MmMwOTRkODYiLCJpYXQiOjE3NDM1MTEyNTcsImlzc3VlciI6ImRhdGFzdWwiLCJpc3MiOiJkYXRhc3VsIiwianRpIjoiZWZlNDI2NmUtZmZmMi00NjJjLWE0MzktNmY2M2M1ODFlNzgxIiwiZXhwIjoxNzQzNTEzMDU3LCJhdWQiOiJsb2NhbGhvc3QuODI4MCIsImNvbXBhbnlJZCI6ImQyZTk4NzQ4LTE4MTgtYjA5OC05ZTE0LWZlZDkzODg4NGNiMyIsInNjb3BlIjpbIi9oc3YiLCIvdHJlcCJdfQ.eMngMva-zBHzmvrFdQxX4RG0Ey2i_I5SIRNwS0amAfj2XUrDfzAzV6spGcbdHQeBjftghhYJWWR0HP2Y1DLgUGs8KGAfQJFtu9om0hmWH72P1faI_CtIV9qG0VchVwkYpVw91KnCiCyayo8_uDP3cARKCQOuHasxebsKzXDn76Q-2u_rBUPEZhC7jGK-QIaNQX5ELUA4MWaJs5p58B0VsTX_LJbAtzfQbNv_ttFTZJUUzX7dorOOyYAv_LI7UikfWs1QGUQyx8_q962GvtgY6a9DlcLtXwfuxIr6-_4y8NldilHPYemGbfRumU5fqcfZ9lCwD0_wxpB9oIranL589w",
"externalToken": "eyJhbGciOiJIUzI1NiJ9.eyJwYXNzd29yZCI6IjE3NGIwNjNhN2Q3ZTY4NDAwNGQ5NGY0OTY1YjUyYWQ5IiwiY29tcGFueUlkIjoiMTIwIiwic2VjcmV0YXJ5IjoiZGFuaWVsLmpvc2UiLCJiZW5lZmljaWFyeUNhcmQiOiIwMTIwMDEwODk1OTAwMDA0OCIsInByb3ZpZGVyIjozMTkyMSwiY2xpbmljIjoxMDAyNiwiZXhwIjoxNzQzNTE0ODU5LCJsb2dpbkRhdGEiOnsiY29tcGFueUlkIjoiMTIwIiwic2VjcmV0YXJ5IjoiZGFuaWVsLmpvc2UiLCJiZW5lZmljaWFyeUNhcmQiOiIwMTIwMDEwODk1OTAwMDA0OCIsInByb3ZpZGVyIjozMTkyMSwiY2xpbmljIjoxMDAyNiwiYXV0aG9yaXplZCI6dHJ1ZSwidG9rZW4iOiJleUpoYkdjaU9pSlNVekkxTmlKOS5leUp6ZFdJaU9pSXdNakF3TVRCaFFVbFhXVmhhUTJaVVNqTkRZMjFhV21OeFZuRlJNek1pTENKcFlYUWlPakUzTkRNMU1URXlOVE1zSW1semMzVmxjaUk2SW1SaGRHRnpkV3dpTENKcGMzTWlPaUprWVhSaGMzVnNJaXdpYW5ScElqb2lNR0UyTkRZeU56TXRaak5rWkMwME9EWTVMV0l5TURFdE5HVTJZVFZoTm1RMU1EbGxJaXdpWlhod0lqb3hOelF6TlRFek1EVXpMQ0poZFdRaU9pSnNiMk5oYkdodmMzUXVPREk0TUNJc0luTmpiM0JsSWpwYklpOXdiM0owY0hKbGMzUWlYWDAuR1BISTh1dkNCN0FQRGlCXzNnN0RXVkIyNXNCT2lfR1Y3eEdKMkIybHNZdTNvVlcwQ1JWVkVvcTZoVDFia0pCa1RjREhuT3RVck5yREw3NjFWNTZJcVVKZFhRM09PX1RvWnYzdDk0bnU0VkVSR05ZV2dxUGtMSG9oUXZuTGpkbEZBUzVta2pWZFo1NDVMLWpPeUhHckR1VnpmOVZ6cWtqcEdWbmZKQmdrYWpZYXIxQkplUHRmOW9pRldrQnU4UG41T3hlUVZGamhGSTA3V0tIbFBvbUVmbkRZTFNqNmc4eVR5aXRib19hTTRuTzgyRU1pSkdWU2tCWWJCcVpKZG1TMkl6bVJBQTI3UGFtNUtDVWtZS2wzSU5ubFV1MVAwRlZ3Z2lGNEVaZGtsTU1ZUkl5YnNlWWV0Zndib1ltcHlXc29CRTJXTWpIc0doT2dHbGZaU25ZMGlnIiwiaHlicmlkVG9rZW4iOiJleUpoYkdjaU9pSklVekkxTmlKOS5leUp3WVhOemQyOXlaQ0k2SWpFM05HSXdOak5oTjJRM1pUWTROREF3TkdRNU5HWTBPVFkxWWpVeVlXUTVJaXdpYzJWamNtVjBZWEo1SWpvaVpHRnVhV1ZzTG1wdmMyVWlMQ0ppWlc1bFptbGphV0Z5ZVVOaGNtUWlPaUl3TVRJd01ERXdPRGsxT1RBd01EQTBPQ0lzSW5CeWIzWnBaR1Z5SWpvek1Ua3lNU3dpWTJ4cGJtbGpJam94TURBeU5pd2laWGh3SWpveE56UXpOVEUwT0RVNUxDSnBZWFFpT2pFM05ETTFNVEV5TlRsOS5RS05ISkxmQXl4WWdySGJDWmhwdFJzNndNNDFWR253ZWwyTFM5M0h5ekVJIiwiZGF0YXN1bFRva2VuIjoiZXlKaGJHY2lPaUpTVXpJMU5pSjkuZXlKemRXSWlPaUpoWTJGaFptTTFaUzA0TldZeUxUQTNZbVl0TkRJeE5DMDFaRGs1TW1Nd09UUmtPRFlpTENKcFlYUWlPakUzTkRNMU1URXlOVGNzSW1semMzVmxjaUk2SW1SaGRHRnpkV3dpTENKcGMzTWlPaUprWVhSaGMzVnNJaXdpYW5ScElqb2laV1psTkRJMk5tVXRabVptTWkwME5qSmpMV0UwTXprdE5tWTJNMk0xT0RGbE56Z3hJaXdpWlhod0lqb3hOelF6TlRFek1EVTNMQ0poZFdRaU9pSnNiMk5oYkdodmMzUXVPREk0TUNJc0ltTnZiWEJoYm5sSlpDSTZJbVF5WlRrNE56UTRMVEU0TVRndFlqQTVPQzA1WlRFMExXWmxaRGt6T0RnNE5HTmlNeUlzSW5OamIzQmxJanBiSWk5b2MzWWlMQ0l2ZEhKbGNDSmRmUS5lTW5nTXZhLXpCSHptdnJGZFF4WDRSRzBFeTJpX0k1U0lSTndTMGFtQWZqMlhVckRmekF6VjZzcEdjYmRIUWVCamZ0Z2hoWUpXV1IwSFAyWTFETGdVR3M4S0dBZlFKRnR1OW9tMGhtV0g3MlAxZmFJX0N0SVY5cUcwVmNoVndrWXBWdzkxS25DaUN5YXlvOF91RFAzY0FSS0NRT3VIYXN4ZWJzS3pYRG43NlEtMnVfckJVUEVaaEM3akdLLVFJYU5RWDVFTFVBNE1XYUpzNXA1OEIwVnNUWF9MSmJBdHpmUWJOdl90dEZUWkpVVXpYN2Rvck9PeVlBdl9MSTdVaWtmV3MxUUdVUXl4OF9xOTYyR3Z0Z1k2YTlEbGNMdFh3ZnV4SXI2LV80eThObGRpbEhQWWVtR2JmUnVtVTVmcWNmWjlsQ3dEMF93eHBCOW9JcmFuTDU4OXciLCJleHRlcm5hbFRva2VuIjoiIiwiZXJyb3JDb2RlIjowLCJlcnJvck1lc3NhZ2UiOiIiLCJjbnBqQ2xpbmljIjoiIn0sImlhdCI6MTc0MzUxMTI1OX0.gPQhPMok27aAD0tG11VTk_LAI7Y1U_zRiU_uFtHiCUI",
"errorCode": 0,
"errorMessage": "",
"cnpjClinic": ""
} |
//Decoded Header
{
"alg": "RS256"
}
//Decoded Payload
{
"sub": "acaafc5e-85f2-07bf-4214-5d992c094d86",
"iat": 1742470961,
"issuer": "datasul",
"iss": "datasul",
"jti": "becefb13-bcc5-4ed0-a0d5-e1e75ec28c14",
"exp": 1742472761,
"aud": "localhost.8280",
"companyId": "d2e98748-1818-b098-9e14-fed938884cb3",
"scope": [
"*"
]
} |
//Decoded Header
{
"alg": "HS256"
}
//Decoded Payload
{
"password": "174b063a7d7e684004d94f4965b52ad9",
"secretary": "daniel.jose",
"beneficiaryCard": "01200108959000048",
"provider": 31921,
"clinic": 10026,
"exp": 1742474562,
"iat": 1742470962
} |
//Decoded Header
{
"alg": "RS256"
}
//Decoded Payload
{
"sub": "020010aAIWYXZCfTJ3CcmZZcqVqQ33",
"iat": 1743511253,
"issuer": "datasul",
"iss": "datasul",
"jti": "0a646273-f3dd-4869-b201-4e6a5a6d509e",
"exp": 1743513053,
"aud": "localhost.8280",
"scope": [
"/portprest"
]
} |
//Decode Header
{
"alg": "HS256"
}
//Decode Payload
{
"password": "174b063a7d7e684004d94f4965b52ad9",
"companyId": "120",
"secretary": "daniel.jose",
"beneficiaryCard": "01200108959000048",
"provider": 31921,
"clinic": 10026,
"exp": 1743514859,
"loginData": {
"companyId": "120",
"secretary": "daniel.jose",
"beneficiaryCard": "01200108959000048",
"provider": 31921,
"clinic": 10026,
"authorized": true,
"token": "eyJhbGciOiJSUzI1NiJ9.eyJzdWIiOiIwMjAwMTBhQUlXWVhaQ2ZUSjNDY21aWmNxVnFRMzMiLCJpYXQiOjE3NDM1MTEyNTMsImlzc3VlciI6ImRhdGFzdWwiLCJpc3MiOiJkYXRhc3VsIiwianRpIjoiMGE2NDYyNzMtZjNkZC00ODY5LWIyMDEtNGU2YTVhNmQ1MDllIiwiZXhwIjoxNzQzNTEzMDUzLCJhdWQiOiJsb2NhbGhvc3QuODI4MCIsInNjb3BlIjpbIi9wb3J0cHJlc3QiXX0.GPHI8uvCB7APDiB_3g7DWVB25sBOi_GV7xGJ2B2lsYu3oVW0CRVVEoq6hT1bkJBkTcDHnOtUrNrDL761V56IqUJdXQ3OO_ToZv3t94nu4VERGNYWgqPkLHohQvnLjdlFAS5mkjVdZ545L-jOyHGrDuVzf9VzqkjpGVnfJBgkajYar1BJePtf9oiFWkBu8Pn5OxeQVFjhFI07WKHlPomEfnDYLSj6g8yTyitbo_aM4nO82EMiJGVSkBYbBqZJdmS2IzmRAA27Pam5KCUkYKl3INnlUu1P0FVwgiF4EZdklMMYRIybseYetfwboYmpyWsoBE2WMjHsGhOgGlfZSnY0ig",
"hybridToken": "eyJhbGciOiJIUzI1NiJ9.eyJwYXNzd29yZCI6IjE3NGIwNjNhN2Q3ZTY4NDAwNGQ5NGY0OTY1YjUyYWQ5Iiwic2VjcmV0YXJ5IjoiZGFuaWVsLmpvc2UiLCJiZW5lZmljaWFyeUNhcmQiOiIwMTIwMDEwODk1OTAwMDA0OCIsInByb3ZpZGVyIjozMTkyMSwiY2xpbmljIjoxMDAyNiwiZXhwIjoxNzQzNTE0ODU5LCJpYXQiOjE3NDM1MTEyNTl9.QKNHJLfAyxYgrHbCZhptRs6wM41VGnwel2LS93HyzEI",
"datasulToken": "eyJhbGciOiJSUzI1NiJ9.eyJzdWIiOiJhY2FhZmM1ZS04NWYyLTA3YmYtNDIxNC01ZDk5MmMwOTRkODYiLCJpYXQiOjE3NDM1MTEyNTcsImlzc3VlciI6ImRhdGFzdWwiLCJpc3MiOiJkYXRhc3VsIiwianRpIjoiZWZlNDI2NmUtZmZmMi00NjJjLWE0MzktNmY2M2M1ODFlNzgxIiwiZXhwIjoxNzQzNTEzMDU3LCJhdWQiOiJsb2NhbGhvc3QuODI4MCIsImNvbXBhbnlJZCI6ImQyZTk4NzQ4LTE4MTgtYjA5OC05ZTE0LWZlZDkzODg4NGNiMyIsInNjb3BlIjpbIi9oc3YiLCIvdHJlcCJdfQ.eMngMva-zBHzmvrFdQxX4RG0Ey2i_I5SIRNwS0amAfj2XUrDfzAzV6spGcbdHQeBjftghhYJWWR0HP2Y1DLgUGs8KGAfQJFtu9om0hmWH72P1faI_CtIV9qG0VchVwkYpVw91KnCiCyayo8_uDP3cARKCQOuHasxebsKzXDn76Q-2u_rBUPEZhC7jGK-QIaNQX5ELUA4MWaJs5p58B0VsTX_LJbAtzfQbNv_ttFTZJUUzX7dorOOyYAv_LI7UikfWs1QGUQyx8_q962GvtgY6a9DlcLtXwfuxIr6-_4y8NldilHPYemGbfRumU5fqcfZ9lCwD0_wxpB9oIranL589w",
"externalToken": "",
"errorCode": 0,
"errorMessage": "",
"cnpjClinic": ""
},
"iat": 1743511259
} |
O sistema identifica automaticamente o papel do usuário baseado nas credenciais:
O sistema possui um mecanismo que bloqueia o usuário após múltiplas tentativas de login malsucedidas.
import { Component, OnInit } from '@angular/core';
@Component({
selector: 'app-root',
templateUrl: './app.component.html',
styleUrls: ['./app.component.css']
})
export class AppComponent implements OnInit {
token: string = '';
title = 'consome-portal-app';
async ngOnInit() {
const token = await this.autenticate();
if (token) {
this.token = token;
}
this.initializeEventListeners();
}
removeExistentsScripts(){
let existingScript = document.getElementById("port-prest-external-integration");
if (existingScript) {
existingScript.remove(); // Remove o script caso já exista
}
}
protected consultationRegister() {
this.removeExistentsScripts();
let scriptToken = document.createElement("script");
scriptToken.setAttribute("src", "https://portal.totvs.com.br/totvs-hgp-portal-prestador/external-integration/consultation-register.js");
scriptToken.setAttribute("type", "text/javascript");
scriptToken.setAttribute("id", "port-prest-external-integration");
scriptToken.setAttribute("token", `${this.token}`);
scriptToken.setAttribute("target", "#divIframe");
document.getElementsByTagName('body')[0]?.appendChild(scriptToken);
}
protected examRequest() {
this.removeExistentsScripts();
let scriptToken = document.createElement("script");
scriptToken.setAttribute("src", "https://portal.totvs.com.br/totvs-hgp-portal-prestador/external-integration/exam-request.js");
scriptToken.setAttribute("type", "text/javascript");
scriptToken.setAttribute("id", "port-prest-external-integration");
scriptToken.setAttribute("token", `${this.token}`);
scriptToken.setAttribute("target", "#divIframe");
document.getElementsByTagName('body')[0]?.appendChild(scriptToken);
}
private async autenticate() {
const bodyRequest = JSON.stringify({
"user": "daniel.jose",
"password": "174b063a7d7e684004d94f4965b52ad9",
"clinic": 10026,
"cnpjClinic": "03.151.186/0001-78",
"provider": 31921,
"beneficiaryCard": "01200108959000048"
});
const options = {
method: 'POST',
headers: {
'Content-Type': 'application/json',
},
body: bodyRequest
};
const result = await fetch('https://portal.totvs.com.br/totvs-hgp-haw-auth/api/external-authentication', options) ?? "";
const { externalToken } = await result.json();
return externalToken;
}
private initializeEventListeners(){
window.addEventListener("message", (event) => {
// Verifique a origem da mensagem para evitar problemas de segurança
if (event.origin !== "https://portal.totvs.com.br") return;
if (event.data.event === "savedConsultationRegister") {
console.log("Registro de consulta: ", event.data);
alert("O Registro de consulta foi salvo com sucesso!");
}
if (event.data.event === "examRequestFinish") {
console.log("Solicitação de exame: ", event.data);
alert("O Solicitação de exame foi salvo com sucesso!");
}
});
}
} |
<h1> <div id="divIframe" #divIframe> </div> </h1> |
Após obter o token de autenticação, você pode incorporar o Portal Prestador de duas maneiras:
protected consultationRegister() {
this.removeExistentsScripts();
let scriptToken = document.createElement("script");
scriptToken.setAttribute("src", "https://portal.totvs.com.br/totvs-hgp-portal-prestador/external-integration/consultation-register.js");
scriptToken.setAttribute("type", "text/javascript");
scriptToken.setAttribute("id", "port-prest-external-integration");
scriptToken.setAttribute("token", `${this.token}`);
scriptToken.setAttribute("target", "#divIframe");
document.getElementsByTagName('body')[0]?.appendChild(scriptToken);
} |
Exemplo do iframe do registro de consulta:
protected examRequest() {
this.removeExistentsScripts();
let scriptToken = document.createElement("script");
scriptToken.setAttribute("src", "https://portal.totvs.com.br/totvs-hgp-portal-prestador/external-integration/exam-request.js");
scriptToken.setAttribute("type", "text/javascript");
scriptToken.setAttribute("id", "port-prest-external-integration");
scriptToken.setAttribute("token", `${this.token}`);
scriptToken.setAttribute("target", "#divIframe");
document.getElementsByTagName('body')[0]?.appendChild(scriptToken);
} |
Exemplo do iframe do solicitação de exames:

curl --location 'https://portal.totvs.com.br/dts/datasul-rest/resources/prg/portprest/v1/elegibility' \
--header 'authorization: Bearer eyJhbGciOiJSUzI1NiJ9.eyJzdWIiOiIwMjAwMTBhQUlXWVhaQ2ZUSjNDY21aWmNxVnFRMzMiLCJpYXQiOjE3NDM1MTE5OTQsImlzc3VlciI6ImRhdGFzdWwiLCJpc3MiOiJkYXRhc3VsIiwianRpIjoiNWFiN2ZkYTgtMDUzNy00YzRmLWE5OWEtN2I5NWYzYjA2YTI4IiwiZXhwIjoxNzQzNTEzNzk0LCJhdWQiOiJsb2NhbGhvc3QuODI4MCIsInNjb3BlIjpbIi9wb3J0cHJlc3QiXX0.UomeuerSlOou9gNz_9ZVhTFrmb96ZvTL1EKd4CejT_-r8sZhPLTW1vT2eN-XPZutgoKPlo4l_LeKytnJcuDTd7w48L2fJaNf_vXXdxS9hvwFjMqEmL_S_zhNIGg1y5Ikw9FPXG4nJO6SgMFtgTNhi7n6vtwaBbTDntH0MnoK6qLPkAhNeKMwnQ2PcphcQ7n9UJed9mdyzW1lS_KJuBzWDiPPSisQbgicN9VnMjKEwBe2Bk_nF-8KFQiLNAjRlF1bXXsdvzROQPKdyheDZkz3wtgX5E31W32khV0ffCdyuwBcCqADWa0zi2ZHIsSPp8BCVEOPZ6CPGgLtiUD4BQFZeQ' \
--header 'Content-Type: application/json' \
--header 'x-totvs-hgp-portal-prestador-clinic: 10026' \
--data '{
"provider": 31921,
"healthInsurerProvider": 120,
"completeCardNumber": "01200108959000048"
}' |