API SIAC 156 - Guia de Integração Entre Aplicações

Elaborado por: Gerência de Sistemas - Institudo das Cidades Inteligentes
Data de atualização: 30/06/2025


Introdução

Através da API SIAC 156, outras aplicações do município podem ser integradas com o SIAC 156, de forma que a aplicação autenticada conseguirá ter acesso aos protocolos pendentes de um determinado departamento, e devolver ao SIAC 156 com uma resposta.

Em caso de dúvidas quanto a utilização da API, favor contatar a Secretaria de Governo Municipal através do e-mail gestao156@curitiba.pr.gov.br.


Conceitos

A integração é possível através da geração de tokens no formato JSON Web Token, que são gerados em uma primeira chamada a API, e então recuperados pela aplicação, que chama a API passando o token nos cabeçalhos da requisição para ter acesso aos métodos liberados para aplicação.

Como a API SIAC 156 permite chamadas REST via protocolo HTTPS para realizar a integração, é possível integrar aplicações desenvolvidas em diversas tecnologias.


Solicitando a Integração

O primeiro passo para integração é solicitar autorização a SGM detalhando quais grupos serão integrados. Essa solicitação pode ser feita através do seguinte e-mail: gestao156@curitiba.pr.gov.br.

A SGM avaliará o pedido e abrirá um chamado via servicedesk, solicitando a equipe técnica que realize as configurações necessárias e informe através de email a chave para autenticação a API. Primeiramente será liberado acesso somente ao ambiente de desenvolvimento.


Homologando a Integração

Após finalizada a integração em ambiente de desenvolvimento, a SGM deverá ser comunicada para dar inicio a homologação das funcionalidades. Feito o comunicado, a SGM irá solicitar a equipe técnica responsável pela API, a liberação de acesso em ambiente de homologação.

Após a integração homologada pela SGM em conjunto com os gestores da aplicação que realiza a integração, será realizada a liberação de acesso em ambiente de produção.


Autenticando na API

A aplicação solicitará o JSON Web Token gerado pela API através do método /api/v{versão}/autenticacao/autenticar via POST, passando o token gerado no cadastro de aplicações via body.

O JSON Web Token obtido, deverá ser enviado através do cabeçalho Authorization, no seguinte formato: Authorization: Bearer {token_gerado_pela_API}, em todas as requisições solicitadas a API.

Não é necessário utilizar nenhuma biblioteca para validar o token gerado, a API fará a validação. Caso o token seja válido, a mesma verifica se a aplicação possuí acesso ao método requisitado.

Método de obtenção dos dados de usuário.
Método para obter o token da API.
Resposta com dados do usuário.
Resposta do método para obter o token da API.

Procedimento para Integração - Pendências do Órgão

Procedimentos necessários para aplicações que necessitam da integração, assumir os protocolos criados via canais de entrada do SIAC 156 e devolver com uma resposta ao solicitante.

Segue descritivo sequencial para implementar as funcionalidades:

1 - Acessar as pendências do órgão responsável.

Ao assumir o documento para atendimento, o protocolo é bloqueado no SIAC 156 para alterações até ser devolvida novamente ao SIAC 156.

  • "/api/v{versão}/grupo/rso": obter id dos grupos permitidos para acessar as pendências;
  • "/api/v{versão}/pendencia/rso/{grupo}": obter lista de protocolos pendentes para o grupo;
  • "/api/v{versão}/protocolo/assumir/{protocolo}": informar ao SIAC 156 que o protocolo foi assumido pela aplicação com sucesso. Automaticamente será registrado no histórico da solicitação, o nome da aplicação que seguirá com os trâmites, o documento ficará bloqueado no SIAC 156 até sua devolução;

2 - Devolver protocolo ao SIAC 156 ou no caso de pedido de cancelamento notificar referente a recusa e continuidade do atendimento.

  • "/api/v{versão}/protocolo/acoes/{protocolo}": obter as ações permitidas para ser executada no protocolo;
  • "/api/v{versão}/protocolo/resolver": executar ação no protocolo conforme lista de ações disponíveis. Podendo ser uma devolução, resposta ao cidadão ou avaliação de cancelamento.

3 - Avaliar protocolos com pedido de cancelamento

Lista e avalia os protocolos que tiveram um registro de pedido de cancelamento pelo cidadão.

  • "/api/v{versão}/pendencia/cancelamento/{grupo}": obter lista de protocolos com pedido de cancelamento;
  • "/api/v{versão}/protocolo/acoes/{protocolo}": utilizar esse método para listar as ações disponíveis para os protocolos;

4 - Visualizar histórico do protocolo

O histórico contém registros dos trâmites, que são importantes para sua resolução e entendimento. São dados dinâmicos e devem ser consultados em tempo real quando necessário.

  • "/api/v{versão}/protocolo/historico/{protocolo}": obter o histórico de atendimento desde a criação;

5 - Visualizar dados do solicitante

Dados dinâmicos e devem ser consultados em tempo real quando necessário.

  • "/api/v{versão}/protocolo/solicitante/{protocolo}": obter dados do solicitante de um protocolo;

6 - Registrar andamento do protocolo.

Serve para registrar no histórico do protocolo no 156, as principais ações executadas que são importantes para manter registrada no histórico de tramitações do protocolo.

  • "/api/v{versão}/protocolo/registrar-andamento": obter dados do solicitante de um protocolo;

Enviar notificação para o APP Curitiba 156

Método necessário para enviar notificação para o APP Curitiba 156 por tema.

Segue descritivo sequencial para implementar as funcionalidades:

  • "/api/v{versão}/push/topicos": obter tópico(s) disponível(is) para envio de notificação;
  • "/api/v{versão}/push/enviar": enviar notificação para o APP por tópico;