Introdução
As APIs de integraçao cadastral são processadas de maneira assíncrona. Ao realizar essa ação,
o servidor irá retornar um token de processamento (tokenId) que deve ser consultado posteriormente na api
/api/healthcare/hat/v1/{apiversion}/integration/{tokenId} que retornara o status de processamento no seguinte formato:
...
| Bloco de código |
|---|
| theme | Midnight |
|---|
| title | Integration |
|---|
| linenumbers | true |
|---|
|
{
"idTenant": "",
"code": 0,
"message": "",
"detailedMessage": []
} |
Master Token
API: Master Token
Funcionalidade: API utilizada para gerar um token de autorização para autenticação nas API’s do HAT. É necessário apenas um token por cliente.
Tipo de transação: POST
Endpoint: {apiversion}/masterToken
Header:
Authorization: Token de autorização para comunicar com a API
idTenant: Id do tenant da operadora
tenantName: Nome do tenant da operadora
Body:
| Bloco de código |
|---|
| theme | Midnight |
|---|
| title | MasterToken |
|---|
| linenumbers | true |
|---|
|
{
"name": "Teste", // Nome do token
"idTenant": 5, // Id do tenant da operadora
"userId": 445 // Id do usuário que está solicitando o token. O valor dessa propriedade é o mesmo contido no campo IDAUTH da base de dados de administração do HAT na tabela usuários.
} |
Authorizations
API: authorizations (Autorizações)
Funcionalidade: API utilizada para a inclusão e alteração de vidas na base de dados
Tipo de transação: GET
Endpoint: {apiversion}/authorizations
Header:
Authorization: Token de autorização para comunicar com a API
idTenant: Id do tenant da operadora
tenantName: Nome do tenant da operadora
Parametros:
page: Quantidade de páginas
pageSize: Tamanho da página
expand: Informações a mais que precisa retornar (healthProvider,professional,procedures.rejectionCauses,beneficiary,medicalTeam,requestedHospitalInfo,authorizedHospitalInfo,cbos,sourceAuthorization,rejectionCauses,healthInsurance)
order: Ordenação (-authorizationId para decrescente/+authorizationId para crescente)
trackingStatus: Indica se o registro já foi ou não importado pelo software de gestão(0 para não importado, 1 para importado)
Persons
API: Persons (Vidas - Inclusão/Alteração)
Funcionalidade: API utilizada para a inclusão e alteração de vidas na base de dados
Tipo de transação: POST
Endpoint: {apiversion}/persons
Header:
Authorization: Token de autorização para comunicar com a API
idTenant: Id do tenant da operadora
tenantName: Nome do tenant da operadora
Body:
Propriedades:
| Propriedade | Descrição | Tamanho | Tipo | Formato | Obrigatório |
|---|
| personId | Matricula da vida no sistema | 8 | Caractere | 01234567 | x |
| holderCPF | CPF da vida | 14 | Caractere | 01234567890123 | x |
| name | Nome da vida | 70 | Caractere |
| x |
| birthdate | Data de nascimento da vida | 8 | Caractere | aaaammdd | x |
| gender | Gênero da vida | 1 | Caractere | 1 - Masculino 2 - Feminino | x |
| nationalhealthcard | Numero da carteira nacional de saúde | 15 | Caractere | 012345678901234 | x |
| phonenumber | Telefone de contato | 15 | Caractere | 012345678901234 |
|
| zipcode | CEP do endereço | 8 | Caractere | 01234567 |
|
| citycode | Código do municipio no IBGE | 7 | Caractere | 0123456 |
|
| email | Email de contato | 60 | Caractere |
| x |
Body:
| Bloco de código |
|---|
| theme | Midnight |
|---|
| title | Persons |
|---|
| linenumbers | true |
|---|
|
{
"items": [
{ |
| Bloco de código |
|---|
| theme | Midnight |
|---|
| title | Persons |
|---|
| linenumbers | true |
|---|
|
{
"items": [
{
"personId": "BTS_MATVID",
"holderCPF": "BTS_CPFUSR",
"name": "BTS_NOMUSR",
"birthdate": "BTS_DATNAS",
"genderpersonId": "BTS_SEXO98765432",
"nationalhealthcardholderCPF": "BTS_NRCRNA321654987",
"phonenumbername": "BTS_TELEFOUsuario de exemplo",
"zipcodebirthdate": "BTS_CEPUSR19000101",
"citycodegender": "BTS_CODMUNF",
"emailnationalhealthcard": "BTS_EMAIL098765432109876",
}
]"phonenumber": "5511987654321",
"healthInsurerIdzipcode": "BA0_CODIDE+BA0_CODINT09876543",
"ansRegistry "citycode": "BA0_SUSEP3550308"
} |
Beneficiaries
API: Beneficiaries (Beneficiários - Inclusão/Alteração)
Funcionalidade: API utilizada para a inclusão e alteração de beneficiarios na base de dados
Tipo de transação: POST
Endpoint: {apiversion}/beneficiaries
Header:
Authorization: Token de autorização para comunicar com a API
idTenant: Id do tenant da operadora
tenantName: Nome do tenant da operadora
Body:
| Bloco de código |
|---|
| theme | Midnight |
|---|
| title | Beneficiaries |
|---|
| linenumbers | true |
|---|
|
{,
"email": "exemplo@totvs.com"
}
],
"itemshealthInsurerId": ["0001",
{
"subscriberId"ansRegistry": "321456"
} |
Beneficiaries
API: Beneficiaries (Beneficiários - Inclusão/Alteração)
Funcionalidade: API utilizada para a inclusão e alteração de beneficiarios na base de dados
Tipo de transação: POST
Endpoint: {apiversion}/beneficiaries
Header:
Authorization: Token de autorização para comunicar com a API
idTenant: Id do tenant da operadora
tenantName: Nome do tenant da operadora
Propriedades:
| Propriedade | Descrição | Tamanho | Tipo | Formato | Obrigatório |
|---|
| subscriberId | Matricula do beneficiário | 15 | Caractere | 012345678901234 | x |
| contractNumber | Contrato do beneficiário | 12 | Caractere | 098765432109 | x |
| contractVersion | Versão do contrato | 3 | Caractere | 098 | x |
| subContractNumber | Subcontrato do beneficiário | 9 | Caractere | 098765432 | x |
| subContractVersion | Versão do subcontrato | 3 | Caractere | 098 | x |
| holderCpf | CPF do beneficiário | 11 | Caractere | 098765432 | x |
| personId | Código da vida do beneficiário. Deve ser o mesmo código do campo personId da API Persons | 8 | Caractere | 98765432 | x |
| name | Nome do beneficiário | 70 | Caractere |
| x |
| birthdate | Data de nascimento do beneficiário | 8 | Caractere | aaaammdd | x |
| blockedDate | Data de bloqueio do beneficiário | 8 | Caractere | aaaammdd |
|
| unblockDate | Data de desbloqueio do beneficiário | 8 | Caractere | aaaammdd |
|
| gender | Gênero do beneficiário | 1 | Caractere | 1 - Masculino 2 - Feminino | x |
| effectiveDate | Data de inclusão do beneficiário | 8 | Caractere | aaaammdd | x |
| healthInsuranceCode | Código do plano do beneficiário | 8 | Caractere | 09876543 | x |
| healthInsuranceVersion | Versão do plano do beneficiário | 3 | Caractere | 098 | x |
| zipCode | CEP do beneficiário | 8 | Caractere | 09876543 | x |
| cityCode | Código da cidade no IBGE | 7 |
| 0987654 | x |
| waitingPeriodDate | Data de carência | 8 | Caractere | aaaammdd | x |
| cardExpiration | Data de validade da carteirinha do beneficiário | 8 | Caractere | aaaammdd | x |
| holderRelationship | Relacionamento do beneficiário com o titular do contrato | 1 | Caractere | T - Titular D - Dependente | x |
| cardMagneticField | Valor da tarja magnética do cartão | 254 | Caractere | 098765432109 |
|
| oldSubscriberId | Matricula antiga do beneficiário | 17 | Caractere | 09876543210987654 |
|
| habilitagrpcob | Indica se considera grupo de cobertura no nível do beneficiário | 1 | Caractere | 0 - Não 1 - Sim | x |
| habilitaclacar | Indica se habilita classe de carência para o beneficiário | 1 | Caractere | 0 - Não 1 - Sim | x |
Body:
| Bloco de código |
|---|
| theme | Midnight |
|---|
| title | Beneficiaries |
|---|
| linenumbers | true |
|---|
|
{
"items": [
{
"subscriberId": "00010002012345010",
"contractNumber": "098765432109",
"contractVersion": "098",
"subContractNumber": "098765432",
"subContractVersion": "098",
"holderCpf": "098765432",
"personId": "98765432",
"name": "Usuario de exemplo",
"birthdate": "19000101",
"blockedDate": "19000101",
"unblockDate": "19000101",
"gender": "F",
"effectiveDate": "19000101",
"healthInsuranceCode": "098765",
"healthInsuranceVersion": "098",
"zipCode": "09876543",
"cityCode": "3550308",
"waitingPeriodDate": "19000101",
"cardExpiration": "19000101",
"holderRelationship": "T",
"cardMagneticField": "098765432109",
"oldSubscriberId": "00010002012345010",
"habilitagrpcob": "0",
"habilitaclacar": "0"
}
],
"healthInsurerId": "0001",
"ansRegistry": "321456"
} |
BeneficiaryStatus
API: beneficiaryStatus (Beneficiários - Bloqueio/Desbloqueio)
Funcionalidade: API utilizada para a bloqueio e desbloqueio de beneficiários na base de dados
Tipo de transação: POST
Endpoint: {apiversion}/beneficiaryStatus
Header:
Authorization: Token de autorização para comunicar com a API
idTenant: Id do tenant da operadora
tenantName: Nome do tenant da operadora
Propriedades:
| Propriedade | Descrição | Tamanho | Tipo | Formato | Obrigatório |
|---|
| eventDate | Data do evento | 8 | Caractere | aaaammdd | x |
| eventType | Tipo de evento | 11 | Caractere | Bloqueio Desbloqueio | x |
| entry_hour | Hora do registro | 5 | Caractere | hh:mm | x |
| subscriberId | Matricula do beneficiário | 15 | Caractere | 012345678901234 | x |
| entry_date | Data do registro | 8 | Caractere | aaaammdd | x |
Body:
| Bloco de código |
|---|
| theme | Midnight |
|---|
| title | beneficiaryStatus |
|---|
| linenumbers | true |
|---|
|
{
"items": [
{
"eventDate": "19000101",
"eventType": "Desbloqueio",
"entry_hour": "00:01",
"subscriberId": "00010002012345010",
"entry_date": "19000101"
}
],
"healthInsurerId": "0001",
"ansRegistry": "321456"
} |
HealthProviders
API: healthProviders (Redes de Atendimento - Inclusão/Alteração)
Funcionalidade: API utilizada para a inclusão e alteração de redes de atendimento na base de dados
Tipo de transação: POST
Endpoint: {apiversion}/healthProviders
Header:
Authorization: Token de autorização para comunicar com a API
idTenant: Id do tenant da operadora
tenantName: Nome do tenant da operadora
Propriedades:
| Propriedade | Descrição | Tamanho | Tipo | Formato | Obrigatório |
|---|
| healthProviderCode | Indica o código da rede de atendimento | 8 | Caractere | 098765 | x |
| healthProviderDocument | Informa o CPF/CNPJ da rede de atendimento | 14 | Caractere | 0001098765000101 | x |
| name | Informa o nome da rede de atendimento | 60 | Caractere |
| x |
| healthProviderType | Indica se o prestador é do tipo pessoa física ou pessoa juridica | 1 | Caractere | F - Física J - Juridica | x |
| healthProviderClass | Informa o tipo de prestador | 3 | Caractere | MED - MEDICO LAB - LABORATORIO HOS - HOSPITAL OPE - OPERADORA CLI - CLINICA DEN - DENTISTAS | x |
| email | Informa um endereço de e-mail da rede de atendimento | 60 | Caractere |
| x |
Body:
| Bloco de código |
|---|
| theme | Midnight |
|---|
| title | healthProviders |
|---|
| linenumbers | true |
|---|
|
{
"items": [
{
"healthProviderCode": "098765",
"healthProviderDocument": "0001098765000101",
"name": "Exemplo de prestador RDA",
"healthProviderType": "J",
"healthProviderClass": "CLI",
"email": "prestadorexemplo@totvs.com"
}
],
"healthInsurerId": "0001",
"ansRegistry": "321456"
} |
AttendanceLocations
API: attendanceLocations (Locais de atendimento - Inclusão/Alteração)
Funcionalidade: API utilizada para a inclusão e alteração de locais de atendimento na base de dados
Tipo de transação: POST
Endpoint: {apiversion}/attendanceLocations
Header:
Authorization: Token de autorização para comunicar com a API
idTenant: Id do tenant da operadora
tenantName: Nome do tenant da operadora
Propriedades:
| Propriedade | Descrição | Tamanho | Tipo | Formato | Obrigatório |
|---|
| codint | Código da operadora | 4 | Caractere | 0123 | x |
| healthProviderCode | Código da rede de atendimento | 8 | Caractere | 09876543 | x |
| locationCode | Código do local de atendimento | 3 | Caractere | 012 | x |
| locationTypeCode | Código do tipo de local de atendimento | 3 | Caractere | 012 | x |
| locationDescription | Descrição do tipo de local de atendimento | 30 | Caractere | Exemplos: Clinica medica Laboratorio Hospital | x |
| zipCode | CEP do local de atendimento | 8 | Caractere | 09876543 | x |
| address | Endereço do local de atendimento | 40 | Caractere |
| x |
| addressNumber | Numero do endereço do local de atendimento | 6 | Caractere | 123ABC | x |
| addressComplement | Complemento do endereço do local de atendimento | 30 | Caractere |
| x |
| cityName | Cidade do local de atendimento | 30 | Caractere |
| x |
| stateAbbreviation | Estado do local de atendimento | 2 | Caractere |
| x |
| district | Bairro do local de atendimento | 30 | Caractere |
| x |
| cnesCode | Codigo CNES do local de atendimento | 7 | Caractere | 0987654 | x |
| region | Código do município do local de atendimento | 3 | Caractere | 012 |
|
Body:
| Bloco de código |
|---|
| theme | Midnight |
|---|
| title | attendanceLocations |
|---|
| linenumbers | true |
|---|
|
{
"items": [
{BA1_CODINT + BA1_CODEMP + BA1_MATRIC + BA1_TIPREG + BA1_DIGITO",
"contractNumber": "BA1_CONEMP",
"contractVersion": "BA1_VERCON",
"subContractNumber": "BA1_SUBCON",
"subContractVersion": "BA1_VERSUB",
"holderCpf": "BA1_CPFUSR",
"personId": "BA1_MATVID",
"name": "BA1_NOMUSR",
"birthdate": "BA1_DATNAS",
"blockedDate": "BA1_DATBLO",
"unblockDate": "BA1_DESBLO",
"gender": "BA1_SEXO",
"effectiveDate": "BA1_DATINC",
"healthInsuranceCode": "BA1_CODPLA",
"healthInsuranceVersion": "BA1_VERSAO",
"zipCode": "BA1_CEPUSR",
"cityCode": "BA1_CODMUN",
"waitingPeriodDate": "BA1_DATCAR",
"cardExpiration": "BA1_DTVLCR",
"holderRelationship": "BA1_TIPUSU",
"cardMagneticField": "BA1_TARCAR",
"oldSubscriberId": "BA1_MATANT",
"habilitagrpcobcodint": "BA1_INFGCB0001",
"habilitaclacarhealthProviderCode": "BA1_INFCOB"
}
]098765",
"healthInsurerId": "BA0_CODIDE+BA0_CODINT",
"ansRegistry": "BA0_SUSEP"
} |
BeneficiaryStatus
API: beneficiaryStatus (Beneficiários - Bloqueio/Desbloqueio)
Funcionalidade: API utilizada para a bloqueio e desbloqueio de beneficiários na base de dados
Tipo de transação: POST
Endpoint: {apiversion}/beneficiaryStatus
Header:
Authorization: Token de autorização para comunicar com a API
idTenant: Id do tenant da operadora
tenantName: Nome do tenant da operadora
Body:
| Bloco de código |
|---|
| theme | Midnight |
|---|
| title | beneficiaryStatus |
|---|
| linenumbers | true |
|---|
|
{
"items": [
"locationCode": "001",
"locationTypeCode": "001",
"locationDescription": "CLINICAS",
"zipCode": "09876543",
"address": "Exemplo de endereco",
"addressNumber": "123",
{ "addressComplement": "Complemento de endereco",
"eventDatecityName": "DataExemplo dode eventomunicipio",
"eventTypestateAbbreviation": "Tipo de evento(Bloqueio/Desbloqueio)SP",
"entry_hourdistrict": "HoraExemplo dode registrobairro",
"subscriberIdcnesCode": "Matricula do beneficiário"0987654,
"entry_dateregion": "Data do registro012"
}
],
"healthInsurerId": "BA0_CODIDE+BA0_CODINT0001",
"ansRegistry": "BA0_SUSEP321456"
} |
...
HealthProviderSpecialties
API: healthProviders healthProviderSpecialties (Redes Especialidades para redes de Atendimento atendimento - Inclusão/Alteração)
Funcionalidade: API utilizada para a inclusão e alteração de especialidades para redes de atendimento na base de dados
Tipo de transação: POST
Endpoint: {apiversion}/healthProvidershealthProviderSpecialties
Header:
Authorization: Token de autorização para comunicar com a API
idTenant: Id do tenant da operadora
tenantName: Nome do tenant da operadora
Body:
{
"items": [
{
"healthProviderCode": "BAU_CODIGO",
"healthProviderDocument": "BAU_CPFCGC",
"name": "BAU_NOME",
"reducedName": "BAU_NREDUZ",
"healthProviderType": "BAU_TIPPE",
"healthProviderClass": "BAU_TIPPRE",
"email": "BAU_EMAIL",
"cnesCode": "BAU_CNES"
}
],
"healthInsurerId": "BA0_CODIDE+BA0_CODINT",
"ansRegistry": "BA0_SUSEP"
}
// ############################################################################################
API: attendanceLocations (Locais de atendimento - Inclusão/Alteração)
Funcionalidade: API utilizada para a inclusão e alteração de locais de atendimento na base de dados
Tipo de transação: POST
Endpoint: {apiversion}/attendanceLocations
Header:
Authorization: Token de autorização para comunicar com a API
idTenant: Id do tenant da operadora
tenantName: Nome do tenant da operadora
Body:
{
"items": [
{
"codint": "BB8_CODINT",
"healthProviderCode": "BB8_CODIGO",
"locationCode": "BB8_CODLOC",
"locationTypeCode": "BB8_LOCAL",
"locationDescription": "BB8_DESLOC",
"zipCode": "BB8_CEP",
"streetType": "BB8_TIPLOG",
"address": "BB8_END",
"addressNumber": "BB8_NR_END",
"addressComplement": "BB8_COMEND",
"cityCode": "BB8_CODMUN",
"cityName": "BB8_MUN",
"stateAbbreviation": "BB8_EST",
"district": "BB8_BAIRRO",
"phoneAreaCode": "BB8_DDD",
"phone": "BB8_TEL",
"contactName": "BB8_CONTAT",
"cnesCode": "BB8_CNES",
"region": "BB8_REGMUN"
}
],
"healthInsurerId": "BA0_CODIDE+BA0_CODINT",
"ansRegistry": "BA0_SUSEP"
}
// ############################################################################################
API: healthProviderSpecialties (Especialidades para redes de atendimento - Inclusão/Alteração)
Funcionalidade: API utilizada para a inclusão e alteração de especialidades para redes de atendimento na base de dados
Tipo de transação: POST
Endpoint: {apiversion}/healthProviderSpecialties
Header:
Authorization: Token de autorização para comunicar com a API
idTenant: Id do tenant da operadora
tenantName: Nome do tenant da operadora
...
Propriedades:
| Propriedade | Descrição | Tamanho | Tipo | Formato | Obrigatório |
|---|
| codint | Código da operadora | 4 | Caractere | 0123 | x |
| healthProviderCode | Código da rede de atendimento | 8 | Caractere | 09876543 | x |
| specialtyCode | Código da especialidade | 3 | Caractere | 098 | x |
| subspecialtyCode | Código da subespecialidade | 3 | Caractere | 098 | x |
| locationCode | Código do local de atendimento | 3 | Caractere | 098 | x |
| blockDate | Data de bloqueio da especialidade | 8 | Caractere | aaaammdd | x |
| considerSpecialty | Indica se devem ser checadas as regras de solicita/executa para esta especialidade. | 1 | Caractere | 0 - Não 1 - Sim | x |
| allowsMaterial | Indica se para este especialidade a RDA poderá solicitar materiais e medicamentos. | 1 | Caractere | 0 - Não 1 - Sim | x |
| searchOrder | Indica se a ordem de pesquisa de autorização, será primeiro por Procedimentos Autorizados ou Procedimentos Não Autorizados. | 1 | Caractere | 0 - Não 1 - Sim | x |
Body:
| Bloco de código |
|---|
| theme | Midnight |
|---|
| title | HealthProviderSpecialties |
|---|
| linenumbers | true |
|---|
|
{
"items": [
{
"codint": "BAX_CODINT (Varchar(4)) Example: 0001",
"healthProviderCode": "BAX_CODIGO (Varchar(8)) Example: 098765",
"specialtyCode": "BAX_CODESP (Varchar(3)) Example: 001",
"subspecialtyCode": "BAX_CODSUB (Varchar(3)) Example: 002",
"locationCode": "BAX_CODLOC (Varchar(3)) Example: 001",
"blockDate": "BAX_DATBLO (Varchar(8)) Example: 19000101",
"considerSpecialty": "BAX_CONESP (Varchar(1)) Example: '1' para sim e '0' para não",
"allowsMaterial": "BAX_LIMATM (Varchar(1)) Example: 1",
"searchOrder": "BAX_ORDPES (Varchar(1)) Example: 0"
}
],
"healthInsurerId": "Example: 0001",
"ansRegistry": "Example: 321456"
|
...