Logos
  1. Parte 2: Prática de implementação do sistema da XValid
  2. Criar um serviço que realize uma consulta a uma tabela do banco de dados
Workshop de Interoperabilidade
  • Página Inicial
  • Parte 1: Fundamentos Teóricos
    • Introdução
    • Histórico do X-Road
    • Apresentação do X-Valid
    • Arquitetura e Componentes (Security Servers)
    • Clientes e Subsistemas
    • Segurança
      • Comunicação Criptografada
      • Timestamping de Mensagens
      • Auditoria
  • Parte 2: Prática de implementação do sistema da XValid
    • Conectar da LINK ao banco de dados
    • Criar um serviço que realize uma consulta a uma tabela do banco de dados
    • Cadastro do Serviço no Security Server
    • Criar os certificados do cliente
    • Cadastrar o certificado certificado no Security Server
    • Demonstrando o acesso via Postman
    • Demonstrando em Código

Nesta página

  • Criando um Serviço de Consulta de Tabelas no LINK
    • Objetivo
    • Passo a Passo Completo
      • 1 - Acessar o menu de serviços
    • 2 - Preencher os dados gerais do serviço
    • Regras importantes da query:
    • 3 - Definir os parâmetros de entrada
    • 4 - Definir os parâmetros de saída
    • 5 - Testar o serviço
    • Publicando o Serviço
    • Obtendo a URL (endpoint)
    • Validando a Consulta
    • Checklist rápido
  1. Parte 2: Prática de implementação do sistema da XValid
  2. Criar um serviço que realize uma consulta a uma tabela do banco de dados

Criando um Serviço de Consulta de Tabelas no LINK

Objetivo

Transformar uma consulta SQL (query) em um endpoint acessível via API utilizando o LINK. Esse processo permite expor dados de tabelas do banco por meio de um serviço REST.

Passo a Passo Completo

1 - Acessar o menu de serviços

  1. No menu lateral esquerdo, clique em Configurações → Serviços.
  2. A tela exibirá a lista de serviços já cadastrados.
  3. Clique no botão Criar novo serviço (canto superior direito).

2 - Preencher os dados gerais do serviço

Na nova tela aberta, preencha:

  • Nome do Serviço.
  • Versão (ex.: 1).
  • ID.
  • Conexão de Banco (criada anteriormente).
  • Método de Requisição (GET ou POST).
  • Consulta SQL.

Regras importantes da query:

  • NÃO pode utilizar * no SELECT.
  • Deve conter pelo menos uma condição no WHERE.
  • Parâmetros devem ser escritos com :nome_parametro.

Exemplo correto:

SELECT 
  nome,
  localidade    
FROM tb_vale_gas  
WHERE cpf = :cpf 

Novo Serviço

Após preencher tudo, clique em Próximo.

3 - Definir os parâmetros de entrada

A próxima tela mostra automaticamente os parâmetros encontrados na query (variáveis após os :).

Para cada parâmetro:

  • Escolher o tipo de dado (string, number, etc.).
  • Definir o tipo de entrada (query param ou body request).
  • Definir se é opcional ou obrigatório.

Depois clique em Próximo.

Parâmetros de Entrada

4 - Definir os parâmetros de saída

  1. Clique no botão Obter da consulta.
  2. Uma tela será aberta solicitando valores para os parâmetros obrigatórios da query.
  3. Preencha os valores e clique em Executar consulta.

Importante: A query deve retornar ao menos 1 linha, senão o LINK não consegue mapear os campos.

Obter da Query

Após executar, o LINK exibirá os campos retornados pela SELECT. Agora:

  • Escolha o tipo de cada campo.
  • Opcionalmente, defina um Alias:
    • O alias se tornará o nome do campo no JSON final.

Clique em Próximo.

Tipos de Parâmetros de Saída

5 - Testar o serviço

A tela seguinte mostra um painel de testes:

  • Insira valores para os parâmetros obrigatórios
  • Clique em Executar

O LINK exibirá o JSON de resposta que será retornado pela API.

Exemplo:

[
  {
    "localidade": "Sobral",
    "nome": "Francisco Souza"
  }
]

Se tudo estiver correto, clique em Salvar e Publicar.

Teste de Serviço

Publicando o Serviço

Após salvar:

  1. O serviço aparecerá na listagem.
  2. Clique em Publicar para torná-lo acessível externamente.
  3. Confirme no pop-up.

Serviços não publicados ➝ não podem ser acessados via endpoint.

Publicar Serviço

Obtendo a URL (endpoint)

Na listagem de serviços, clique em:

  • Copiar URL

Isso copia o endpoint completo, algo como:

http://[URL DO LINK]:[PORTA DO LINK]/link/operator/[VERSÃO]/[ID]?cpf=100.000.004-04

Validando a Consulta

O serviço estará funcionando corretamente se:

  • A rota estiver publicada.
  • A conexão com o banco estiver ativa.
  • A query retornar dados válidos.
  • Os cabeçalhos obrigatórios estiverem presentes (quando usado via Postman):
    - UXP-Client
    - UXP-Service

Checklist rápido

  • Conexão de banco criada.
  • Consulta válida (sem *, com WHERE, com parâmetros :).
  • Parâmetros de entrada definidos.
  • Consulta retorna pelo menos 1 registro.
  • Parâmetros de saída configurados.
  • Serviço salvo e publicado.
  • URL copiada e testada via Postman.
Conectar da LINK ao banco de dados
Cadastro do Serviço no Security Server

© Copyright 2025, ÍRIS | Laboratório de Inovação e Dados do Governo do Ceará.