Árvore de páginas

Versões comparadas

Chave

  • Esta linha foi adicionada.
  • Esta linha foi removida.
  • A formatação mudou.


CONTEÚDO

  1. Visão Geral
  2. Configurações INI
  3. Verbos
  4. Query Params - GET
  5. Atributos de Resposta
  6. Exemplos de JSONs de Resposta


01. VISÃO GERAL

A API UserUsage tem como objetivo retornar a utilização do plano de saúde de um beneficiário. A API recebe parâmetros como a matrícula, período de e até, e retorna os eventos executados pelo beneficiário no período informado.

Os registros listados são provenientes de uma Query executada na tabela BD6.


02. CONFIGURAÇÕES 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:

Configurando o REST

Com o INI Protheus configurado, a nomenclatura das API´s ficará no formato: <url + Porta + chave rest definidos no INI Protheus> +  /totvsHealthPlans/v1/userUsage. Exemplo:

Logo, a minha URL será: http://spon019400235:8080/rest/totvsHealthPlans/v1/userUsage

03. VERBOS

Seguem os verbos disponíveis na API:

VerboPathDescrição
GET/userUsageExtrato de utilização de beneficiários de saúde

04. QUERY PARAMS - GET

Lista de query params obrigatórios:

CampoDescrição
subscriberIdMatrícula do beneficiário
initialPeriodPeríodo inicial no formato YYYYMM
finalPeriodPeríodo final no formato YYYYMM


Exemplo de chamada para utilização de um beneficiário em Dezembro de 2017:

http://spon019400235:8080/rest/totvsHealthPlans/v1/userUsage?subscriberId=00010001000003002&initialPeriod=201712&finalPeriod=201712


Lista de query params não obrigatórios:

CampoDescrição
fieldsIndica os campos que serão retornados na consulta.
order

Indica uma lista de atributos para realizar a ordenação dos registros. Indicando o caracter – no início, indica que será realizado uma ordenação decrescente.

Lista de atributos que são passíveis de ordenação: procedureCode, procedureName,
executionDate, subscriberName, healthProviderCode, healthProviderName, quantity,
healthProviderDocument, cid, procedureName, healthProviderName, toothRegion, face.

pageSizeIndica quantos registros serão retornados na requisição. O padrão do
sistema são 20 registros. Caso ainda existam registros para serem exibidos, o atributo hasNext será
retornado com true.
pageIndica a página de ordenação que os registros serão apresentados. Se atentar ao controle booleano hasNext

procedureCode,

executionDate,

healthProviderCode,

healthProviderDocument,

cid,

procedureName,

healthProviderName,

quantity,

toothRegion,

face

Indicando um desses atributos e um valor, a API realizará um filtro adicional com o atributo e valor informado.



05. ATRIBUTOS DE RESPOSTA


AtributoCampoTipoDescrição
procedureCodeBD6_CODPROStringCódigo do procedimento
procedureNameBD6_DESPROStringDescrição do procedimento
executionDateBD6_DATPROStringData do evento no formato yyyy-mm-dd
subscribernameBD6_NOMUSRStringNome do beneficiário
healthProviderCodeBD6_CODRDAStringCódigo da rede de atendimento
healthProviderNameBD6_NOMRDAStringNome da rede de atendimento
serviceTypeBR8_CLASSEStringCódigo da classe de procedimento
serviceTypeDescriptionBJE_DESCRIStringDescrição da classe de procedimento
quantityBD6_QTDPRONumberQuantidade do evento
healthProviderDocumentBD6_CPFRDAStringCPF/CNPJ da rede de atendimento
cidBD6_CIDStringCID principal do atendimento
toothRegionBD6_DENREGStringRegião do dente
faceBD6_FADENTStringFace do dente
paidValueBD6_VLRPAGNumberValor pago
disallowanceValueBD6_VLRGLONumberValor de glosa
coPaymentValueBD6_VLRTPFNumberValor de co-participação
subscriberIdBD6_OPEUSR+BD6_CODEMP+BD6_MATRIC+BD6_TIPREG+BD6_DIGITOStringMatrícula do beneficiário


05. EXEMPLOS DE JSONS DE RESPOSTA


Bloco de código
titleSucesso 202
linenumberstrue
{
    "items": [
        {
            "healthProviderDocument": "34391654857",
            "paidValue": 90.64,
            "subscriberId": "00010001000003002",
            "face": "",
            "coPaymentValue": 0,
            "procedureCode": "10101012",
            "executionDate": "2017-12-27",
            "subscribername": "RENATA",
            "healthProviderName": "RDA SILVIA SANT'ANNA",
            "serviceTypeDescription": "CONSULTAS",
            "serviceType": "000001",
            "cid": "A00",
            "procedureName": "CONSULTA EM CONSULTORIO",
            "healthProviderCode": "000007",
            "disallowanceValue": 44.87,
            "quantity": 1,
            "toothRegion": ""
        }
    ],
    "hasNext": false
}



Bloco de código
titleErro 400
linenumberstrue
{
    "code": 400,
    "message": "Os parametros abaixo devem ter 6 caracteres: ",
    "detailedMessage": "initialPeriod, finalPeriod",
    "helpUrl": "",
    "details": [
        {
            "code": "",
            "message": "",
            "detailedMessage": "",
            "helpUrl": ""
        }
    ]
}






HTML
<!-- esconder o menu --> 


<style>
div.theme-default .ia-splitter #main {
    margin-left: 0px;
}
.ia-fixed-sidebar, .ia-splitter-left {
    display: none;
}
#main {
    padding-left: 10px;
    padding-right: 10px;
    overflow-x: hidden;
}

.aui-header-primary .aui-nav,  .aui-page-panel {
    margin-left: 0px !important;
}
.aui-header-primary .aui-nav {
    margin-left: 0px !important;
}
</style>