Árvore de páginas

API de pesquisa de metadados

Produto:Prontuário Eletrônico do Paciente
Assuntos:
  1. FormBuilder API V1


Todas as respostas preenchidas no FormBuilder ficam armazenadas no CouchDB. O CouchDB é um banco de dados noSQL (não relacional). Para maiores informações, acessar: http://couchdb.apache.org/ 

Para obter os dados armazenados, foi criada uma API de pesquisa de metadados. A API de pesquisa não é um BI. A API de pesquisa foi desenvolvida com ASPNET WebAPI e trabalha com serialização JSON.

FormBuilder API V1

Essa é a versão 1 da API de pesquisa. Foi criado um método para realizar as pesquisas que pode receber múltiplos parâmetros.

As pesquisas devem ser realizadas no seguinte endereço (relativo à instalação do FormBuilder): /api/v1/query

Método HTTP: GET - os parâmetros de filtro são enviados na querystring da requisição.

Parâmetros de filtragem:

Nome do parâmetro
responseidcódigo identificador da resposta específica que deseja pesquisar
startdatefiltro de data inicial para as respostas armazenadas (exemplo: ‘startdate=2015/08/28 09:16:12’ – horário é opcional)
enddatefiltro de data final para as respostas armazenadas (exemplo: ‘enddate=2015/12/31 23:59:59’ – horário é opcional)
formidfiltro do código identificador do formulário (não confundir com o parâmetro de entrada ‘formId’!)
tagvalue

filtro de parâmetros de entrada (exemplo: ‘tagvalue=mpi,384067’)

O filtro de parâmetro de entrada é composto das seguintes partes:

• 1. Sigla do parâmetro de entrada
• 2. Valor a ser comparado


Obs: o operador de comparação é sempre IGUALDADE (procuramos o valor exato do parâmetro de entrada)

metavalue

filtro de metadados (exemplo: ‘metavalue=FUMA,EQUAL,Sim’, ‘metavalue=IDIOMA_CK,IS_TRUE,1’)

O filtro de metadado é composto das seguintes partes:


• 1. Sigla do metadado a comparar
• 2. Operador de comparação (EQUAL, IS_TRUE, IS_FALSE – IMPORTANTE: novas operações podem ser desenvolvidas conforme a demanda!)
• 3. Valor a ser comparado

Nota: se nenhum filtro for informado, não realiza pesquisa.

Parâmetros de exibição:

Nome do parâmetro
tagsseleciona os parâmetros de entrada que serão exibidos no resultado (conforme os parâmetros de entrada que estão definidos nos formulários)
fieldsseleciona os metadados (filtro pela SIGLA) que serão exibidos no resultado

Resposta da API V1:

Http Code
400 BadRequestnão foi possível fazer o parse dos filtros informados (uma mensagem adicional pode ser retornada, com o motivo da falha)
200 OKa pesquisa foi executada com sucesso. Os dados são exibidos conforme a figura abaixo


O JSON retornado na resposta da API V1 contém as seguintes informações:

searchTime: tempo em milisegundos da pesquisa (com sufixo ms na string)

totalRows: quantidade de respostas encontradas

rows: um array contendo a lista de respostas encontradas, com fields e tags já filtrados