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/integration/{tokenId} que retornara o status de processamento no seguinte formato:


{
"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:

{
"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:

{
    "items": [
        {
            "personId": "BTS_MATVID",
            "holderCPF": "BTS_CPFUSR",
            "name": "BTS_NOMUSR",
            "birthdate": "BTS_DATNAS",
            "gender": "BTS_SEXO",
            "nationalhealthcard": "BTS_NRCRNA",
            "phonenumber": "BTS_TELEFO",
            "zipcode": "BTS_CEPUSR",
            "citycode": "BTS_CODMUN",
            "email": "BTS_EMAIL"
        }
    ],
    "healthInsurerId": "BA0_CODIDE+BA0_CODINT",
    "ansRegistry": "BA0_SUSEP"
}


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:

{
    "items": [
        {
            "subscriberId": "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",
            "habilitagrpcob": "BA1_INFGCB",
            "habilitaclacar": "BA1_INFCOB"
        }
    ],
    "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:

{
    "items": [
        {
            "eventDate": "Data do evento",
            "eventType": "Tipo de evento(Bloqueio/Desbloqueio)",
            "entry_hour": "Hora do registro",
            "subscriberId": "Matricula do beneficiário",
            "entry_date": "Data do registro"
        }
    ],
    "healthInsurerId": "BA0_CODIDE+BA0_CODINT",
    "ansRegistry": "BA0_SUSEP"
}


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

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"
}


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

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"
}


HealthProviderSpecialties

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

Body:

{
    "items": [
        {
            "codint": "BAX_CODINT",
            "healthProviderCode": "BAX_CODIGO",
            "specialtyCode": "BAX_CODESP",
            "subspecialtyCode": "BAX_CODSUB",
            "locationCode": "BAX_CODLOC",
            "blockDate": "BAX_DATBLO",
            "considerSpecialty": "BAX_CONESP",
            "allowsMaterial": "BAX_LIMATM",
            "searchOrder": "BAX_ORDPES"
        }
    ],
    "healthInsurerId": "BA0_CODIDE+BA0_CODINT",
    "ansRegistry": "BA0_SUSEP"
}