Histórico da Página
CONTEÚDO
- Visão Geral
- Configurações INI
- Verbos
- Exemplo de Chamada da API
- Atributos de Resposta
- Exemplos de JSON de Resposta
01. VISÃO GERAL
A API authorizations tem como objetivo, trabalhar com ações relacionadas as guias geradas no sistema de gestão Plano de Saúde.
VERBO GET
Retornar Dados de uma GuiaVerbo GET
Através do verbo GET, a API pode retornar os dados de uma guia gerada no sistema. A API recebe um path param com a matrícula, e retorna todos os dados das tabelas:
...
Tabela | Atributo |
---|---|
B4Q | (raiz do json) |
BQV | procedures |
BQZ | rejectionCauses |
Verbo POST
Através do verbo POST, a API tem a opção de validar se uma guia está apta a ser realizada o reenvio da mesma pelo sistema Portal Autorizador HAT. Para realizar essa validação, é necessário informar o QueryParam resendBatch. Utilizando essa opção, a API tem três possíveis respostas:
Pré-Análise de Execução de uma Liberação
Outra funcionalidade no verbo GET é a pré-análise de execução de uma Liberação através do queryparam action com o conteúdo validRelease. Para utilizar esta funcionalidade é necessário informar também os queryparams healthProviderCode com o código da Rede de Atendimento e locationCode com o código do Local de Atendimento. A API retorna os dados da guia e a indicação se a liberação pode ser executada no atributo actionReturn e uma mensagem impeditiva (caso necessário) no atributo actionMessage.
VERBO POST
Validação de Reenvio de Guias
Através do verbo POST, a API tem a opção de validar se uma guia está apta a ser realizada o reenvio da mesma pelo sistema Portal Autorizador HAT. Para realizar essa validação, é necessário informar o QueryParam resendBatch. Utilizando essa opção, a API tem três possíveis respostas:
- Foi encontrada a guia informada, a API retorna dos dados da guia para o Portal Autorizador realizar a contingência
- Foi encontrada a guia informada, a API retorna dos dados da guia para o Portal Autorizador realizar a contingência.
- A guia informada não foi encontrada, porém já existe uma guia na data de hoje para o Prestador, Rede de Atendimento e Beneficiário, com isso, o reenvio não será permitido.
- A guia informada não foi encontrada, porém já existe uma guia na data de hoje para o Prestador, Rede de Atendimento e Beneficiário, com isso, o reenvio não será permitido.
- A guia informada não foi encontrada e não existe uma guia na data de hoje para o Prestador, Rede de Atendimento e Beneficiário, com isso, o reenvio será permitido (será gerado uma nova solicitação TISS Online).
02. CONFIGURAÇÕES INI
Validação de Liberação
Outra funcionalidade da API POST é realizar a validação da execução de uma Liberação. Para realizar esta validação é necessário informar o queryparam action com o conteúdo execute. A validação realizada é a mesma do Portal do Prestador do Produto Planos de Saúde SIGAPLS.
02. CONFIGURAÇÕES INI
Para iniciar a instalação do processo, devemos configurar seu INI Para iniciar a instalação do processo, devemos configurar seu INI Protheus com a funcionalidade REST para habilitar o acesso as API´s. Documentos auxiliares:
...
Logo, a minha URL será: http://localhost:8080/rest/totvsHealthPlans/v1/authorizations/<guia>
03. VERBOS
Seguem os verbos disponíveis na API:
Verbo | Path | Path Param | Query Param | Descrição |
---|---|---|---|---|
GET | authorizations | idHealthIns (número da guia) | Guia realizada pelo beneficiário | |
POST | authorizations | resendBatch=true | Valida se é possível realizar o Reenvio da guia pelo HAT |
04. EXEMPLO DE CHAMADA DA API
Chamada GET - Retorna dados de uma Guia
...
http://localhost:8080/rest/totvsHealthPlans/v1/authorizations/000120220900000215
Chamada POST - Valida se pode realizar o reenvio da guia no HATGET - Realiza uma pré-análise de execução de uma Liberação
Exemplo de chamada para validaçãoda pré-análise:
http://localhost:808010.171.80.125:3269/rest/totvshealthplans/v1/authorizations?resendBatch=true
05. ATRIBUTOS DE RESPOSTA
Cabeçalho
...
subscriberId
...
/000120230800000064?action=validRelease&healthProviderCode=000004&locationCode=001
QueryParams | Descrição | Tipo |
---|---|---|
action | Código sequencial TISS Online | Caracter |
healthProviderCode | Código da Rede de Atendimento | Caracter |
locationCode | Código da Rede de Atendimento | Caracter |
Chamada POST - Valida se pode realizar o reenvio da guia no HAT
Exemplo de chamada para validação:
http://localhost:8080/rest/totvshealthplans/v1/authorizations?resendBatch=true
JSON de Solicitação:
Bloco de código | ||
---|---|---|
| ||
{
"tissBatch": "900000008834",
"subscriberId": "00010003000003017",
"healthProviderCode": "000004",
"authorizationType": "2"
} |
Atributo | Descrição | Tipo |
---|---|---|
tissBatch | Código sequencial TISS Online | Caracter |
subscriberId | Matrícula do Beneficiário | Caracter |
healthProviderCode | Código da Rede de Atendimento | Caracter |
authorizationType | Código do tipo da guia | Caracter |
Chamada POST - Valida a execução de uma liberação
Exemplo de chamada para validação da guia 000120230800000064:
http://10.171.80.125:3269/rest/totvshealthplans/v1/authorizations?action=execute
JSON de Solicitação:
Bloco de código | ||
---|---|---|
| ||
{
"idOnHealthInsurer": "000120230800000064",
"healthProviderCode": "000004",
"locationCode": "001"
} |
Atributo | Descrição | Tipo |
---|---|---|
idOnHealthInsurer | Número da Guia | Caracter |
healthProviderCode | Código da Rede de Atendimento | Caracter |
locationCode | Código do Local de Atendimento | Caracter |
05. ATRIBUTOS DE RESPOSTA
CHAMADA GET
Cabeçalho
Atributo | Campo | Tipo |
---|---|---|
subscriberId | BEA_OPEUSR+BEA_CODEMP+BEA_MATRIC+BEA_TIPREG+BEA_DIGITO | Caracter |
primaryICD | BEA_CID | Caracter |
attendanceLocation | BEA_LOCAL | Caracter |
password | BEA_SENHA | Caracter |
accidentIndication | BEA_INDACI | Caracter |
attendanceModel | BEA_TIPADM | Caracter |
attendanceProtocol | BEA_PROATE | Caracter |
attendanceType | BEA_TIPATE | Caracter |
authorizationDate | BEA_DATPRO | Data |
authorizationStatus | BEA_STATUS | Caracter |
authorizationType | BEA_TIPGUI | Caracter |
billingType | BEA_TIPFAT | Caracter |
clinicalCondition | BEA_INDCLI | Caracter |
closingReason | BEA_TIPSAI | Caracter |
consultationType | BEA_TIPCON | Caracter |
endTreatmentDate | BEA_DPTETA | Data |
healthProviderId | BEA_CODRDA | Caracter |
idAuthOnHealthProvider | BEA_GUIPRE | Caracter |
locationCode | BEA_CODLOC | Caracter |
mainAuthorizationCode | BEA_GUIPRI | Caracter |
newbornAttendance | BEA_ATERNA | Caracter |
passwordExpireDate | BEA_VALSEN | Data |
priorAuthorization | BEA_LIBERA | Caracter |
priorAuthorizationStatus | BEA_STALIB | Caracter |
professionalRequestorId | BEA_CDPFSO | Caracter |
professionalExecutorId | BEA_CDPFRE | Caracter |
requestDate | BEA_DATSOL | Data |
attendanceToken | BEA_TOKEDI | Caracter |
missingValidationCode | BEA_AUSVLD | Caracter |
specialtyCode | BEA_CODESP | Caracter |
professionalRequestorCouncil | BEA_SIGLA | Caracter |
professionalRequestorState | BEA_ESTSOL | Caracter |
professionalRequestorCouncilNumber | BEA_REGSOL | Caracter |
professionalRequestorSpecialtyCode | BEA_ESPSOL | Caracter |
professionalExecutorCouncil | BEA_SIGEXE | Caracter |
professionalExecutorState | BEA_ESTEXE | Caracter |
professionalExecutorCouncilNumber | BEA_REGEXE | Caracter |
dischargedType | BE4_TIPALT | Caracter |
dischargedDate | BE4_DTALTA | Data |
dischargedHour | BE4_HRALTA | Caracter |
expectedHospitalizationDate | BE4_PRVINT | Data |
hospType | BE4_TIPINT | Caracter |
Atributo procedures
Atributo | Campo | Tipo |
---|---|---|
authLevel | BE2_NIVAUT | Caracter |
sequence | BE2_SEQUEN | Caracter |
status | BE2_STATUS | Caracter |
requestedQuantity | BE2_QTDSOL | Numérico |
authorizedQuantity | BE2_QTDPRO | Numérico |
balance | BE2_SALDO | Numérico |
unitaryWorth | BD6_VLRPAG + BD6_VLRGLO | Numérico |
executionDate | BE2_DATPRO | Data |
startingTime | BE2_HORPRO | Caracter |
endingTime | BE2_HORFIM | Caracter |
accessWay | BE2_VIA | Caracter |
usedTechnique | BE2_TECUTI | Caracter |
authLevelKey | BE2_CHVNIV | Caracter |
auditing | BE2_AUDITO | Caracter |
priorAuthorization | BE2_LIBERA | Caracter |
priorAuthorizationStatus | BE2_STALIB | Caracter |
tableCode | BE2_CODPAD | Caracter |
procedureCode | BE2_CODPRO | Caracter |
Atributo rejectionCauses
Atributo | Campo | Tipo |
---|---|---|
procedureSequence | BEG_SEQUEN/BEL_SEQUEN | Caracter |
code | BEG_CODGLO/BEL_CODGLO | Caracter |
rejectionSequence | BEG_SEQCRI/BEL_SEQCRI | Caracter |
description | BEG_DESGLO/BEL_DESGLO | Caracter |
CHAMADA POST
Atributo | Campo | Tipo |
---|---|---|
code | Campo fixo que indica a ação encontrada: 0001 e 0002. | Caracter |
message | Mensagem indicativa referente ao código acima: 0001 - Guia informada encontrada, apta para realizar a contingencia 0002 - Não foi encontrada guia, e possível realizar o reenvio | Caracter |
idOnHealthInsurer | Número da guia (baseado no alias da guia informada) BEA_OPEMOV+BEA_ANOAUT+BEA_MESAUT+BEA_NUMAUT B4Q_OPEMOV+B4Q_ANOAUT+B4Q_MESAUT+B4Q_NUMAUT | Caracter |
authorization | Estrutura JSON no modelo do verbo GET acima (será informado quando existir a guia) | Caracter |
06. EXEMPLOS DE JSON DE RESPOSTA
Solicitação GET:
Bloco de código | ||||
---|---|---|---|---|
| ||||
{
"endTreatmentDate": null,
"locationCode": "001",
"professionalRequestorSpecialtyCode": "063",
"professionalRequestorCouncil": "CRM",
"professionalExecutorCouncil": "",
"procedures": [
{
"status": "0",
"sequence": "001",
"endingTime": "1800",
"auditing": "1",
"requestedQuantity": 1,
"startingTime": "1800",
"tableCode": "22",
"authorizedQuantity": 1,
"accessWay": "",
"priorAuthorization": "0",
"priorAuthorizationStatus": "",
"rejectionCauses": [
{
"code": "",
"procedureSequence": "001",
"rejectionSequence": "002",
"description": "NÍVEL: BRV - PLANOS E GRUPOS DE COBERTURA ( 02 - ATUALIZACOES / PRODUTO SAUDE / PRODUTO SAUDE --> FOLDER COBERTURA/CAREN"
},
{
"code": "025",
"procedureSequence": "001",
"rejectionSequence": "001",
"description": "PARA ESTE PROCEDIMENTO NECESSITA AUDITORIA."
}
],
"executionDate": "2022-09-15",
"procedureCode": "10101012",
"unitaryWorth": 0,
"authLevelKey": "00010001001022",
"balance": 0,
"usedTechnique": "",
"authLevel": ""
}
],
"healthProviderId": "000004",
"consultationType": "1",
"requestDate": null,
"dischargedDate": null,
"hospType": "",
"priorAuthorizationStatus": "",
"newbornAttendance": "0",
"professionalExecutorState": "",
"attendanceLocation": "008",
"specialtyCode": "002",
"authorizationType": "01",
"passwordExpireDate": "2022-10-15",
"professionalRequestorId": "A01834",
"missingValidationCode": "01",
"attendanceModel": "1",
"attendanceToken": "",
"professionalRequestorCouncilNumber": "654321",
"professionalExecutorCouncilNumber": "",
"subscriberId": "00010101000007012",
"billingType": "",
"dischargedType": "",
"professionalExecutorId": "",
"accidentIndication": "9",
"priorAuthorization": "0",
"idAuthOnHealthProvider": "",
"password": "",
"attendanceType": "05",
"attendanceProtocol": "88888820220915300033",
"dischargedHour": null,
"authorizationStatus": "6",
"primaryICD": "",
"professionalRequestorState": "SP",
"authorizationDate": "2022-09-15",
"mainAuthorizationCode": "",
"expectedHospitalizationDate": null,
"closingReason": "",
"clinicalCondition": ""
} |
Bloco de código | ||||
---|---|---|---|---|
| ||||
{
"code": 400,
"message": "Guia informada nao encontrada",
"detailedMessage": "Entre em contato com o Suporte",
"helpUrl": "",
"details": [
{
"code": "",
"message": "",
"detailedMessage": "",
"helpUrl": ""
}
]
} |
Solicitação POST:
Bloco de código | ||||
---|---|---|---|---|
| ||||
{
"code": "0001",
"message": "Guia informada encontrada, apta para realizar a contingencia",
"idOnHealthInsurer": "000120230500000019",
"authorization": {
"subscriberId": "00010003000003017",
"primaryICD": "",
"attendanceLocation": "008",
"password": "1084179216633992",
"accidentIndication": "",
"attendanceModel": "2",
"attendanceProtocol": "88888820220816300034",
"attendanceType": "05",
"authorizationDate": "2023-05-15",
"authorizationStatus": "1",
"authorizationType": "02",
"billingType": "",
"clinicalCondition": "",
"closingReason": "",
"consultationType": "1",
"endTreatmentDate": null,
"healthProviderId": "000004",
"idAuthOnHealthProvider": "",
"locationCode": "001",
"mainAuthorizationCode": "100000000",
"newbornAttendance": "0",
"passwordExpireDate": "2297-02-26",
"priorAuthorization": "0",
"priorAuthorizationStatus |
Atributo procedures
...
Atributo rejectionCauses
...
06. EXEMPLOS DE JSON DE RESPOSTA
Solicitação GET:
Bloco de código | ||||
---|---|---|---|---|
| ||||
{ "endTreatmentDate": null, "locationCode": "001", "professionalRequestorSpecialtyCode": "063", "professionalRequestorCouncil": "CRM", "professionalExecutorCouncil": "", "procedures": [ { "status": "0", "sequence": "001", "endingTime": "1800", "auditing": "1", "requestedQuantity": 1, "startingTime": "1800", "tableCode": "22", "authorizedQuantity": 1, "accessWay": "", "priorAuthorization": "0", "priorAuthorizationStatus": "", "rejectionCauses": [ { "code": "", "professionalRequestorId": "000142", "procedureSequenceprofessionalExecutorId": "001", "requestDate": null, "rejectionSequenceattendanceToken": "002", "missingValidationCode": "", "descriptionspecialtyCode": "055"NÍVEL:, BRV - PLANOS E GRUPOS DE COBERTURA ( 02 - ATUALIZACOES / PRODUTO SAUDE / PRODUTO SAUDE --> FOLDER COBERTURA/CAREN" "professionalRequestorCouncil": "CRM", "professionalRequestorState": "RS", "professionalRequestorCouncilNumber": "334455", }"professionalRequestorSpecialtyCode": "223", "professionalExecutorCouncil": "", { "professionalExecutorState": "", "professionalExecutorCouncilNumber": "", "codedischargedType": "025", "dischargedDate": null, "procedureSequencedischargedHour": "001", "expectedHospitalizationDate": null, "rejectionSequencehospType": "001", "procedures": [ "description": "PARA ESTE PROCEDIMENTO NECESSITA AUDITORIA." { "authLevel": "BRV", } ]"sequence": "001", "executionDatestatus": "2022-09-151", "procedureCoderequestedQuantity": "10101012"1, "unitaryWorthauthorizedQuantity": 01, "authLevelKeybalance": "00010001001022"0, "balanceunitaryWorth": 076.4, "usedTechniqueexecutionDate": "2023-05-15", "authLevelstartingTime": "1008", } ], "healthProviderId": "000004", "consultationTypeendingTime": "11008", "requestDate": null, "dischargedDate": null, "hospTypeaccessWay": "", "priorAuthorizationStatus": "", "newbornAttendanceusedTechnique": "0", "professionalExecutorState": "", "attendanceLocation": "008", "specialtyCodeauthLevelKey": "00200010001001007", "authorizationTypeauditing": "010", "passwordExpireDate": "2022-10-15", "professionalRequestorIdteethRegion": "A01834", "missingValidationCode": "01", "attendanceModel": "1", "attendanceTokensurface": "", "professionalRequestorCouncilNumber": "654321", "professionalExecutorCouncilNumber": "", "subscriberIdpriorAuthorization": "000101010000070120", "billingType": "", "dischargedType": "", "professionalExecutorIdpriorAuthorizationStatus": "", "accidentIndication": "9", "priorAuthorization": "0", "idAuthOnHealthProvidertableCode": "22", "passwordprocedureCode": "10101012", "attendanceType": "05", "attendanceProtocol": "88888820220915300033", "dischargedHourrejectionCauses": null,[] "authorizationStatus": "6", "primaryICD": "", } "professionalRequestorState": "SP", ] "authorizationDate": "2022-09-15",} } |
Bloco de código | ||||
---|---|---|---|---|
| ||||
{ "mainAuthorizationCodecode": "0002", "expectedHospitalizationDatemessage": null, "Nao "closingReason": "", "clinicalCondition": "foi encontrada guia, e possivel realizar o reenvio" } |
Bloco de código | ||||
---|---|---|---|---|
| ||||
{ "code": 400, "message": "Guia informada nao encontrada", "detailedMessage": "Entre em contato com o Suporte "Nao e possivel realizar o reenvio", "detailedMessage": "Ja foi encontrada uma guia no seu sistema de gestao para o beneficiario e prestador na data de hoje. Guia(s) encontrada(s): 000120230500000019, 000120230500000021", "helpUrl": "", "details": [ { "code": "",{ "messagecode": "", "detailedMessagemessage": "", "helpUrldetailedMessage": "", } ] } |
Solicitação POST:
Bloco de código | ||||
---|---|---|---|---|
| ||||
{ "code"helpUrl": "0002", "message": "Nao foi encontrada guia,} e possivel realizar o reenvio"] } |