The hardware and bandwidth for this mirror is donated by dogado GmbH, the Webhosting and Full Service-Cloud Provider. Check out our Wordpress Tutorial.
If you wish to report a bug, or if you are interested in having us mirror your free-software or open-source project, please feel free to contact us at mirror[@]dogado.de.

Package {rsei}


Type: Package
Title: Client for the 'SEI' Electronic Information System Web Services
Version: 0.1.0
Description: Toolkit to interact with the 'SOAP' web services of the 'SEI' (Sistema Eletronico de Informacoes), the electronic system for document and process management widely used by Brazilian public administration bodies. Provides functions to build the 'SOAP' envelopes, perform the requests, handle 'SOAP' faults, and parse the 'XML' responses into data frames. Covers process and document queries, listing services, write operations (creating processes and documents, sending and signing off processes, blocks, deadlines and markers) and the permission services of the companion 'SIP' system. Note that access to the web services is restricted by the server to previously authorized network addresses. For more information about the 'SEI' system and its web services see https://www.gov.br/gestao/pt-br/assuntos/processo-eletronico-nacional.
License: GPL-3
Encoding: UTF-8
Language: pt-BR
Depends: R (≥ 4.1.0)
Imports: httr2, xml2, keyring, jsonlite, magrittr, dplyr, tidyr, purrr, tibble
Suggests: testthat (≥ 3.0.0), roxygen2, knitr, rmarkdown
VignetteBuilder: knitr
Config/testthat/edition: 3
URL: https://github.com/StrategicProjects/rsei, https://strategicprojects.github.io/rsei/
BugReports: https://github.com/StrategicProjects/rsei/issues
Config/Needs/website: tidyverse/tidytemplate
Config/roxygen2/version: 8.0.0
NeedsCompilation: no
Packaged: 2026-06-20 20:21:58 UTC; leite
Author: Andre Leite [aut, cre], Marcos Wasilew [aut], Hugo Vasconcelos [aut], Carlos Amorin [aut], Diogo Bezerra [aut], Júlia Nascimento Barreto [aut]
Maintainer: Andre Leite <leite@castlab.org>
Repository: CRAN
Date/Publication: 2026-06-25 11:10:02 UTC

rsei: Client for the 'SEI' Electronic Information System Web Services

Description

logo

Toolkit to interact with the 'SOAP' web services of the 'SEI' (Sistema Eletronico de Informacoes), the electronic system for document and process management widely used by Brazilian public administration bodies. Provides functions to build the 'SOAP' envelopes, perform the requests, handle 'SOAP' faults, and parse the 'XML' responses into data frames. Covers process and document queries, listing services, write operations (creating processes and documents, sending and signing off processes, blocks, deadlines and markers) and the permission services of the companion 'SIP' system. Note that access to the web services is restricted by the server to previously authorized network addresses. For more information about the 'SEI' system and its web services see https://www.gov.br/gestao/pt-br/assuntos/processo-eletronico-nacional.

Acesso restrito por IP

Os Web Services do SEI são protegidos por firewall e só respondem a requisições vindas de IPs/servidores previamente autorizados no cadastro do serviço no SEI. As funções deste pacote (consultas, listagens, escrita e SIP) só retornam dados quando executadas a partir de um host autorizado; de um IP não autorizado as chamadas falham por timeout ou conexão recusada. A autenticação adicional é feita por SiglaSistema + chave de acesso (IdentificacaoServico) — ver sei_config().

Author(s)

Maintainer: Andre Leite leite@castlab.org

Authors:

See Also

Useful links:


Pipe operator

Description

Veja magrittr::%>% para detalhes.

Usage

lhs %>% rhs

Arguments

lhs

Um valor ou o objeto magrittr placeholder.

rhs

Uma chamada de função usando a semântica do magrittr.

Value

O resultado de chamar rhs(lhs).


Andamento

Description

Represents the "Andamento" structure in SEI, which tracks process events.

Usage

Andamento(
  IdAndamento = NULL,
  IdTarefa = NULL,
  IdTarefaModulo = NULL,
  Descricao = NULL,
  DataHora = NULL,
  Unidade = NULL,
  Usuario = NULL,
  Atributos = list()
)

Arguments

IdAndamento

Character. Internal identifier of the andamento.

IdTarefa

Character. Identifier of the associated task.

IdTarefaModulo

Character. Identifier of the module task.

Descricao

Character. Text describing the andamento.

DataHora

Character. Date/time when the andamento was generated.

Unidade

A Unidade object describing the unit that created the andamento.

Usuario

A Usuario object describing the user who created the andamento.

Atributos

A list of AtributoAndamento objects (can be empty).

Value

An S3 object of class "Andamento".


AndamentoMarcador

Description

Represents the "AndamentoMarcador" structure in SEI (marker events).

Usage

AndamentoMarcador(
  IdAndamentoMarcador = NULL,
  Texto = NULL,
  DataHora = NULL,
  Usuario = NULL,
  Marcador = NULL
)

Arguments

IdAndamentoMarcador

Character. Internal ID of the marker event.

Texto

Character. Text associated with the andamento marker.

DataHora

Character. Date/time the marker was generated.

Usuario

A Usuario object describing the user who generated the marker.

Marcador

A Marcador object used in the marker event (or NULL if removed).

Value

An S3 object of class "AndamentoMarcador".


ArquivoExtensao

Description

Represents a file extension allowed in SEI (e.g., pdf, doc).

Usage

ArquivoExtensao(IdArquivoExtensao, Extensao, Descricao)

Arguments

IdArquivoExtensao

Character. Internal SEI ID for the extension.

Extensao

Character. The extension text (e.g., "pdf", "doc").

Descricao

Character. Description of the extension.

Value

An S3 object of class "ArquivoExtensao".


Assinatura

Description

Represents the "Assinatura" structure (signature information).

Usage

Assinatura(
  Nome = NULL,
  CargoFuncao = NULL,
  DataHora = NULL,
  IdUsuario = NULL,
  IdOrigem = NULL,
  IdOrgao = NULL,
  Sigla = NULL
)

Arguments

Nome

Character. Signatory name.

CargoFuncao

Character. Signatory position or function.

DataHora

Character. Date/time of signature.

IdUsuario

Character. ID of the user.

IdOrigem

Character. Origin ID of the user in the SIP.

IdOrgao

Character. ID of the user's organization.

Sigla

Character. The user's sigla (username).

Value

An S3 object of class "Assinatura".


Assunto

Description

Represents the "Assunto" structure in SEI (subject classification).

Usage

Assunto(CodigoEstruturado = NULL, Descricao = NULL)

Arguments

CodigoEstruturado

Character. Structured code for the subject (e.g. "00.01.01.01").

Descricao

Character. Description of the subject.

Value

An S3 object of class "Assunto".


AtributoAndamento

Description

Represents the "AtributoAndamento" structure (key-value attributes).

Usage

AtributoAndamento(Nome = NULL, Valor = NULL, IdOrigem = NULL)

Arguments

Nome

Character. Attribute name.

Valor

Character. Attribute value.

IdOrigem

Character. Auxiliary ID associated with this attribute.

Value

An S3 object of class "AtributoAndamento".


AtributoOuvidoria

Description

Represents the "AtributoOuvidoria" structure (attributes in an ouvidoria context).

Usage

AtributoOuvidoria(Id = NULL, Nome = NULL, Titulo = NULL, Valor = NULL)

Arguments

Id

Character. Identifier of the attribute (e.g., "P").

Nome

Character. Internal name of the attribute.

Titulo

Character. Title for display in the form.

Valor

Character. Value associated with the title.

Value

An S3 object of class "AtributoOuvidoria".


Cargo

Description

Represents a "Cargo" (position) in SEI, with expressions for treatment and vocative.

Usage

Cargo(
  IdCargo = NULL,
  ExpressaoCargo = NULL,
  ExpressaoTratamento = NULL,
  ExpressaoVocativo = NULL
)

Arguments

IdCargo

Character. Internal ID of the cargo.

ExpressaoCargo

Character. Cargo description (e.g., "Governor").

ExpressaoTratamento

Character. Treatment (e.g., "A Sua Excelência o Senhor").

ExpressaoVocativo

Character. Vocative (e.g., "Senhor Governador").

Value

An S3 object of class "Cargo".


Cidade

Description

Represents the "Cidade" structure in SEI.

Usage

Cidade(
  IdCidade,
  IdEstado,
  IdPais,
  Nome,
  CodigoIbge = NULL,
  SinCapital = NULL,
  Latitude = NULL,
  Longitude = NULL
)

Arguments

IdCidade

Character. Identifier of the city.

IdEstado

Character. Identifier of the state.

IdPais

Character. Identifier of the country.

Nome

Character. Name of the city.

CodigoIbge

Character. IBGE code of the city.

SinCapital

"S" or "N", indicates if the city is a state capital.

Latitude

Character. Latitude of the city.

Longitude

Character. Longitude of the city.

Value

An S3 object of class "Cidade".


Contato

Description

Represents the "Contato" structure in SEI, storing personal or organizational contact data.

Usage

Contato(
  StaOperacao = NULL,
  IdContato,
  IdTipoContato = NULL,
  Nome = NULL,
  NomeSocial = NULL,
  StaNatureza = NULL,
  Endereco = NULL,
  Bairro = NULL,
  Cep = NULL,
  Cpf = NULL,
  Cnpj = NULL,
  Rg = NULL,
  OrgaoExpedidor = NULL,
  TelefoneFixo = NULL,
  TelefoneCelular = NULL,
  Email = NULL,
  ...
)

Arguments

StaOperacao

Character. Operation code: "A", "E", "D", "R", or NULL.

IdContato

Character. Internal ID of the contact.

IdTipoContato

Character. Internal ID for the type of contact.

Nome

Character. Name of the contact.

NomeSocial

Character. Social name of the contact.

StaNatureza

Character. "F" (individual) or "J" (company).

Endereco

Character. Address of the contact.

Bairro

Character. Neighborhood.

Cep

Character. Postal code.

Cpf

Character. Contact's CPF.

Cnpj

Character. Contact's CNPJ.

Rg

Character. Contact's RG.

OrgaoExpedidor

Character. RG Issuing authority.

TelefoneFixo

Character. Landline phone.

TelefoneCelular

Character. Mobile phone.

Email

Character. Email of the contact.

...

Additional fields (e.g., city, cargo, passaporte).

Value

An S3 object of class "Contato".


DefinicaoControlePrazo

Description

Represents the "DefinicaoControlePrazo" structure for deadline control.

Usage

DefinicaoControlePrazo(
  ProtocoloProcedimento,
  DataPrazo = NULL,
  Dias = NULL,
  SinDiasUteis = NULL
)

Arguments

ProtocoloProcedimento

Character. Visible process number, e.g. "12.1.000000077-4".

DataPrazo

Character. The date for defining the deadline.

Dias

Character. Number of days for the deadline.

SinDiasUteis

"S" or "N", indicating if the days are business days.

Value

An S3 object of class "DefinicaoControlePrazo".


DefinicaoMarcador

Description

Represents the "DefinicaoMarcador" structure for applying markers to a process.

Usage

DefinicaoMarcador(ProtocoloProcedimento, IdMarcador, Texto = NULL)

Arguments

ProtocoloProcedimento

Character. Visible process number.

IdMarcador

Character. The marker's ID available to the unit.

Texto

Character. Text associated with the marker usage.

Value

An S3 object of class "DefinicaoMarcador".


Destinatario

Description

Represents the "Destinatario" structure in SEI.

Usage

Destinatario(Sigla = NULL, Nome = NULL)

Arguments

Sigla

Character. The sigla of the recipient.

Nome

Character. The name of the recipient.

Value

An S3 object of class "Destinatario".


Documento

Description

Represents the "Documento" structure in SEI, for generated or external documents.

Usage

Documento(
  Tipo,
  IdProcedimento = NULL,
  ProtocoloProcedimento = NULL,
  IdSerie,
  Numero = NULL,
  NomeArvore = NULL,
  Data = NULL,
  Descricao = NULL,
  IdTipoConferencia = NULL,
  SinArquivamento = NULL,
  Remetente = NULL,
  Interessados = list(),
  Destinatarios = list(),
  Observacao = NULL,
  NomeArquivo = NULL,
  NivelAcesso = NULL,
  IdHipoteseLegal = NULL,
  Conteudo = NULL,
  ConteudoMTOM = NULL,
  IdArquivo = NULL,
  Campos = list(),
  SinBloqueado = NULL
)

Arguments

Tipo

Character. "G" (generated) or "R" (received).

IdProcedimento

Character. SEI process ID (optional).

ProtocoloProcedimento

Character. Visible process number (optional).

IdSerie

Character. The document type in SEI.

Numero

Character. Document number (optional).

NomeArvore

Character. Display name in the process tree (optional).

Data

Character. Document date (required for external docs).

Descricao

Character. Document description (required for generated docs).

IdTipoConferencia

Character. Conference type ID (for external docs).

SinArquivamento

"S" or "N". Indicates if document should be archived.

Remetente

A Remetente object (null for generated docs).

Interessados

A list of Interessado objects.

Destinatarios

A list of Destinatario objects.

Observacao

Character. Unit observation, if any.

NomeArquivo

Character. File name (required for external docs).

NivelAcesso

Character. "0"=public, "1"=restricted, "2"=secret, or NULL.

IdHipoteseLegal

Character. Hypothesis ID for restricted/secret docs, if any.

Conteudo

Character. Base64-encoded file content (required for docs).

ConteudoMTOM

Raw or base64 for large files (optional).

IdArquivo

Character. If using adicionarArquivo approach, reference ID.

Campos

A list of Campo structures (form fields), if any.

SinBloqueado

"S" or "N". If blocked, the doc cannot be changed or removed.

Value

An S3 object of class "Documento".


Estado

Description

Represents the "Estado" structure in SEI (state info).

Usage

Estado(IdEstado, IdPais, Sigla, Nome, CodigoIbge = NULL)

Arguments

IdEstado

Character. ID of the state.

IdPais

Character. ID of the country.

Sigla

Character. State sigla.

Nome

Character. Name of the state.

CodigoIbge

Character. IBGE code of the state.

Value

An S3 object of class "Estado".


Feriado

Description

Represents the "Feriado" structure (holiday).

Usage

Feriado(Data, Descricao)

Arguments

Data

Character. Date of the holiday.

Descricao

Character. Description of the holiday.

Value

An S3 object of class "Feriado".


HipoteseLegal

Description

Represents the "HipoteseLegal" structure (legal hypothesis for restricted/sigilo).

Usage

HipoteseLegal(IdHipoteseLegal, Nome, BaseLegal, NivelAcesso)

Arguments

IdHipoteseLegal

Character. ID of the legal hypothesis.

Nome

Character. Name of the legal hypothesis.

BaseLegal

Character. Description of the base legal.

NivelAcesso

Character. "1"=restricted, "2"=secret, etc.

Value

An S3 object of class "HipoteseLegal".


Interessado

Description

Represents the "Interessado" structure in SEI (interested party in a process or document).

Usage

Interessado(Sigla = NULL, Nome = NULL)

Arguments

Sigla

Character. The sigla of the interested party.

Nome

Character. The name of the interested party.

Value

An S3 object of class "Interessado".


Marcador

Description

Represents the "Marcador" structure (markers associated with a process).

Usage

Marcador(IdMarcador, Nome, Icone = NULL, SinAtivo = NULL)

Arguments

IdMarcador

Character. ID of the marker.

Nome

Character. Name of the marker.

Icone

Character. PNG icon (Base64-encoded).

SinAtivo

"S" or "N" indicating if the marker is active.

Value

An S3 object of class "Marcador".


Observacao

Description

Represents the "Observacao" structure in SEI (unit notes).

Usage

Observacao(Descricao = NULL, Unidade = NULL)

Arguments

Descricao

Character. The text of the observation.

Unidade

A Unidade object that added this observation.

Value

An S3 object of class "Observacao".


Pais

Description

Represents the "Pais" structure in SEI (country).

Usage

Pais(IdPais, Nome)

Arguments

IdPais

Character. The ID of the country.

Nome

Character. The name of the country.

Value

An S3 object of class "Pais".


Procedimento

Description

Represents the "Procedimento" structure in SEI (process definition).

Usage

Procedimento(
  IdTipoProcedimento,
  NumeroProtocolo = NULL,
  DataAutuacao = NULL,
  Especificacao = NULL,
  Assuntos = list(),
  Interessados = list(),
  Observacao = NULL,
  NivelAcesso = NULL,
  IdHipoteseLegal = NULL
)

Arguments

IdTipoProcedimento

Character. ID of the process type.

NumeroProtocolo

Character. Process number (optional).

DataAutuacao

Character. Process creation date (optional).

Especificacao

Character. Process specification (optional).

Assuntos

A list of Assunto objects.

Interessados

A list of Interessado objects.

Observacao

Character. Unit observation (optional).

NivelAcesso

"0"=public, "1"=restricted, "2"=secret, or NULL.

IdHipoteseLegal

Character. If restricted/secret, link to a legal hypothesis.

Value

An S3 object of class "Procedimento".


ProcedimentoResumido

Description

Represents a "ProcedimentoResumido" structure (summary of a process).

Usage

ProcedimentoResumido(
  IdTipoProcedimento,
  ProcedimentoFormatado,
  TipoProcedimento = NULL
)

Arguments

IdTipoProcedimento

Character. ID of the process type.

ProcedimentoFormatado

Character. Visible process number.

TipoProcedimento

A TipoProcedimento object with details about the process type.

Value

An S3 object of class "ProcedimentoResumido".


ProtocoloBloco

Description

Represents a "ProtocoloBloco" structure (process/document in a block).

Usage

ProtocoloBloco(ProtocoloFormatado, Identificacao, Assinaturas = list())

Arguments

ProtocoloFormatado

Character. Visible process or document number.

Identificacao

Character. Type of the process or document.

Assinaturas

A list of Assinatura objects (empty if none).

Value

An S3 object of class "ProtocoloBloco".


Publicacao

Description

Represents the "Publicacao" structure in SEI (publication data).

Usage

Publicacao(
  IdPublicacao = NULL,
  IdDocumento = NULL,
  StaMotivo = NULL,
  Resumo = NULL,
  IdVeiculoPublicacao = NULL,
  NomeVeiculo = NULL,
  StaTipoVeiculo = NULL,
  Numero = NULL,
  DataDisponibilizacao = NULL,
  DataPublicacao = NULL,
  Estado = NULL,
  ImprensaNacional = NULL
)

Arguments

IdPublicacao

Character. Internal ID of the publication.

IdDocumento

Character. Internal ID of the associated document.

StaMotivo

Character. "1"=Publication, "2"=Rectification, "3"=Republication, "4"=Apostilament.

Resumo

Character. Summary text of the publication.

IdVeiculoPublicacao

Character. Internal ID of the publication vehicle.

NomeVeiculo

Character. Name of the publication vehicle.

StaTipoVeiculo

Character. "I"=Internal, "E"=External, "M"=Module.

Numero

Character. Publication number.

DataDisponibilizacao

Character. Date of availability.

DataPublicacao

Character. Date of publication.

Estado

Character. "A"=Scheduled or "P"=Published.

ImprensaNacional

A PublicacaoImprensaNacional object or NULL.

Value

An S3 object of class "Publicacao".


PublicacaoImprensaNacional

Description

Represents the "PublicacaoImprensaNacional" structure in SEI.

Usage

PublicacaoImprensaNacional(
  IdVeiculo = NULL,
  SiglaVeiculo = NULL,
  DescricaoVeiculo = NULL,
  Pagina = NULL,
  IdSecao = NULL,
  Secao = NULL,
  Data = NULL
)

Arguments

IdVeiculo

Character. ID of the vehicle.

SiglaVeiculo

Character. e.g., "DOU".

DescricaoVeiculo

Character. e.g., "Diário Oficial da União".

Pagina

Character. Page number of the publication.

IdSecao

Character. ID of the section.

Secao

Character. Section name.

Data

Character. Publication date.

Value

An S3 object of class "PublicacaoImprensaNacional".


Remetente

Description

Represents the "Remetente" structure in SEI (sender info).

Usage

Remetente(Sigla = NULL, Nome = NULL)

Arguments

Sigla

Character. Participant sigla.

Nome

Character. Participant name.

Value

An S3 object of class "Remetente".


Serie

Description

Represents the "Serie" structure in SEI (document type).

Usage

Serie(IdSerie, Nome, Aplicabilidade = NULL)

Arguments

IdSerie

Character. ID of the document type.

Nome

Character. Name of the document type.

Aplicabilidade

Character. "T"=internal/external, "I"=internal, "E"=external, "F"=forms.

Value

An S3 object of class "Serie".


TipoConferencia

Description

Represents the "TipoConferencia" structure in SEI (conference type info).

Usage

TipoConferencia(IdTipoConferencia, Descricao)

Arguments

IdTipoConferencia

Character. Identifier of the conference type.

Descricao

Character. Description of the conference type.

Value

An S3 object of class "TipoConferencia".


TipoProcedimento

Description

Represents the "TipoProcedimento" structure in SEI (process type info).

Usage

TipoProcedimento(IdTipoProcedimento, Nome)

Arguments

IdTipoProcedimento

Character. Identifier of the process type.

Nome

Character. Name of the process type.

Value

An S3 object of class "TipoProcedimento".


Unidade

Description

Represents the "Unidade" structure in SEI (organizational unit).

Usage

Unidade(
  IdUnidade,
  Sigla,
  Descricao,
  SinProtocolo = NULL,
  SinArquivamento = NULL,
  SinOuvidoria = NULL
)

Arguments

IdUnidade

Character. Identifier of the unit.

Sigla

Character. Unit sigla.

Descricao

Character. Unit description.

SinProtocolo

"S" or "N" if it's a protocol unit.

SinArquivamento

"S" or "N" if it's an archive unit.

SinOuvidoria

"S" or "N" if it's an ombudsman unit.

Value

An S3 object of class "Unidade".


UnidadeProcedimentoAberto

Description

Represents the "UnidadeProcedimentoAberto" structure (where a process is open).

Usage

UnidadeProcedimentoAberto(Unidade, UsuarioAtribuicao = NULL)

Arguments

Unidade

A Unidade object (the open unit).

UsuarioAtribuicao

A Usuario object to which the process is assigned (optional).

Value

An S3 object of class "UnidadeProcedimentoAberto".


Usuario

Description

Represents the "Usuario" structure in SEI (user info).

Usage

Usuario(IdUsuario, Sigla, Nome)

Arguments

IdUsuario

Character. Identifier of the user.

Sigla

Character. The user's sigla.

Nome

Character. The user's full name.

Value

An S3 object of class "Usuario".


anexar_processo

Description

Anexa um processo a outro (anexarProcesso).

Usage

anexar_processo(
  protocolo_principal,
  protocolo_anexado,
  config = sei_config(),
  verbose = FALSE
)

Arguments

protocolo_principal, protocolo_anexado

Números dos processos.

config

Um objeto sei_config().

verbose

Logical.

Value

TRUE em caso de sucesso.


atribuir_processo

Description

Atribui um processo a um usuário na unidade (atribuirProcesso).

Usage

atribuir_processo(
  protocolo_procedimento,
  id_usuario,
  config = sei_config(),
  sin_reabrir = "N",
  verbose = FALSE
)

Arguments

protocolo_procedimento

Character. Número do processo.

id_usuario

Character. Id do usuário no SIP.

config

Um objeto sei_config().

sin_reabrir

"S"/"N".

verbose

Logical.

Value

TRUE em caso de sucesso.


atualizar_contatos

Description

Atualiza (cadastra/altera) um conjunto de contatos (atualizarContatos).

Usage

atualizar_contatos(contatos, config = sei_config(), verbose = FALSE)

Arguments

contatos

Lista de contatos (objetos Contato() / listas nomeadas).

config

Um objeto sei_config().

verbose

Logical.

Value

TRUE em caso de sucesso.


bloquear_processo

Description

Bloqueia um processo (bloquearProcesso).

Usage

bloquear_processo(
  protocolo_procedimento,
  config = sei_config(),
  verbose = FALSE
)

Arguments

protocolo_procedimento

Character. Número do processo.

config

Um objeto sei_config().

verbose

Logical.

Value

TRUE em caso de sucesso.


Build XML for SOAP Parameters (compatibilidade)

Description

Converte uma lista nomeada em XML dos parâmetros para o corpo SOAP, no formato do SEI (com xsi:type="xsd:string" em escalares, estruturas aninhadas e arrays <item>). Delega para o renderizador canônico do pacote.

Usage

build_parameters_xml(params_list)

Arguments

params_list

Lista nomeada de parâmetros, ex.: list(SiglaSistema = "X", IdUnidade = "123").

Value

Uma string XML dos parâmetros.

See Also

sei_build_envelope

Examples

build_parameters_xml(list(SiglaSistema = "X", IdUnidade = "123"))


Build a SOAP Envelope (compatibilidade)

Description

Cria um envelope SOAP 1.1 no formato do SEI com method como elemento raiz dentro de <soapenv:Body>. body_content deve ser a string XML já renderizada dos parâmetros (ver build_parameters_xml).

Para novo código, prefira sei_build_envelope, que monta os parâmetros a partir de uma lista R.

Usage

build_soap_envelope(method, body_content)

Arguments

method

Character. Nome da operação SOAP (ex.: "gerarProcedimento").

body_content

Character. XML dos parâmetros a inserir na operação.

Value

Uma string com o envelope SOAP completo.

See Also

sei_build_envelope

Examples

build_soap_envelope("listarUnidades",
  build_parameters_xml(list(SiglaSistema = "X")))


Generic SEI SOAP Call (compatibilidade)

Description

Envia uma requisição SOAP para um Web Service do SEI. Mantida por compatibilidade; internamente delega para sei_call, que monta o envelope no formato correto e trata erros HTTP e SOAP Fault.

Usage

call_sei_api(sei_url, method, params = list(), verbose = FALSE)

Arguments

sei_url

Character. URL do Web Service do SEI.

method

Character. Nome da operação SOAP (ex.: "gerarProcedimento").

params

Lista nomeada de parâmetros do corpo da operação.

verbose

Logical. Se TRUE, imprime envelope e resposta.

Value

Um xml_document (de xml2) com a resposta SOAP.

See Also

sei_call

Examples

## Not run: 
  resp_xml <- call_sei_api(
    sei_url = "https://sei.exemplo.gov.br/sei/ws/SeiWS.php",
    method  = "listarUnidades",
    params  = list(SiglaSistema = "HORTENSIAS", IdentificacaoServico = "chave")
  )

## End(Not run)


cancelar_disponibilizacao_bloco

Description

Cancela a disponibilização de um bloco (cancelarDisponibilizacaoBloco).

Usage

cancelar_disponibilizacao_bloco(
  id_bloco,
  config = sei_config(),
  verbose = FALSE
)

Arguments

id_bloco

Character. Número do bloco.

config

Um objeto sei_config().

verbose

Logical.

Value

TRUE em caso de sucesso.


cancelar_documento

Description

Cancela um documento (cancelarDocumento).

Usage

cancelar_documento(
  protocolo_documento,
  motivo,
  config = sei_config(),
  verbose = FALSE
)

Arguments

protocolo_documento

Character. Número do documento.

motivo

Character. Motivo do cancelamento.

config

Um objeto sei_config().

verbose

Logical.

Value

TRUE em caso de sucesso.


concluir_controle_prazo

Description

Conclui o controle de prazo de processos (concluirControlePrazo).

Usage

concluir_controle_prazo(
  protocolos_procedimentos,
  config = sei_config(),
  verbose = FALSE
)

Arguments

protocolos_procedimentos

Vetor de números de processos.

config

Um objeto sei_config().

verbose

Logical.

Value

TRUE em caso de sucesso.


concluir_processo

Description

Conclui um processo na unidade (concluirProcesso).

Usage

concluir_processo(
  protocolo_procedimento,
  config = sei_config(),
  verbose = FALSE
)

Arguments

protocolo_procedimento

Character. Número do processo.

config

Um objeto sei_config().

verbose

Logical.

Value

TRUE em caso de sucesso.


consultar_bloco

Description

Chama a operação consultarBloco do SEI. O bloco deve ser da unidade (config$id_unidade) ou estar disponibilizado para ela.

Usage

consultar_bloco(
  id_bloco,
  config = sei_config(),
  sin_retornar_protocolos = "N",
  raw = FALSE,
  verbose = FALSE
)

Arguments

id_bloco

Character. Número do bloco.

config

Um objeto sei_config().

sin_retornar_protocolos

"S" ou "N" (padrão "N"; "S" implica processamento adicional no servidor).

raw

Logical. Se TRUE, devolve o xml_document bruto.

verbose

Logical. Se TRUE, imprime envelope e resposta.

Value

Um tibble (ou xml_document se raw = TRUE).


consultar_documento

Description

Chama a operação consultarDocumento do SEI. Por padrão devolve o resultado parseado como tibble (use raw = TRUE para o xml_document).

Usage

consultar_documento(
  protocolo_documento,
  config = sei_config(),
  sin_retornar_andamento_geracao = "S",
  sin_retornar_assinaturas = "S",
  sin_retornar_publicacao = "S",
  sin_retornar_campos = "S",
  raw = FALSE,
  verbose = FALSE
)

Arguments

protocolo_documento

Character. Número do documento visível ao usuário (ex.: "0003934").

config

Um objeto sei_config().

sin_retornar_andamento_geracao, sin_retornar_assinaturas, sin_retornar_publicacao, sin_retornar_campos

"S" ou "N", indicando se cada bloco deve ser retornado.

raw

Logical. Se TRUE, devolve o xml_document bruto.

verbose

Logical. Se TRUE, imprime envelope e resposta.

Value

Um tibble (ou xml_document se raw = TRUE).


consultar_documentos

Description

Consulta vários documentos de uma vez e empilha os resultados em um único tibble. Cada documento é consultado com consultar_documento() e o resultado recebe uma coluna protocolo (o número consultado) e uma coluna erro (NA em sucesso; a mensagem caso a consulta falhe). Por padrão um documento com erro não interrompe o lote.

Usage

consultar_documentos(
  protocolos,
  config = sei_config(),
  parar_em_erro = FALSE,
  verbose = FALSE,
  ...
)

Arguments

protocolos

Vetor de números de documento.

config

Um objeto sei_config().

parar_em_erro

Logical. Se TRUE, interrompe na primeira falha; se FALSE (padrão), registra o erro na coluna erro e segue.

verbose

Logical. Repassado a consultar_documento().

...

Demais argumentos repassados a consultar_documento() (ex.: os sinalizadores ⁠sin_retornar_*⁠). Não use raw aqui.

Value

Um tibble com uma linha por documento (colunas protocolo e erro além das de consultar_documento()).

Examples

## Not run: 
  consultar_documentos(c("0000001", "0003934"), config = sei_config())

## End(Not run)


consultar_procedimento

Description

Chama a operação consultarProcedimento do SEI para recuperar os dados de um processo. Internamente usa sei_call e, por padrão, devolve o resultado já parseado como tibble.

Usage

consultar_procedimento(
  protocolo_procedimento,
  config = sei_config(),
  sin_retornar_assuntos = "S",
  sin_retornar_interessados = "S",
  sin_retornar_observacoes = "S",
  sin_retornar_andamento_geracao = "S",
  sin_retornar_andamento_conclusao = "S",
  sin_retornar_ultimo_andamento = "S",
  sin_retornar_unidades_procedimento_aberto = "S",
  sin_retornar_procedimentos_relacionados = "S",
  sin_retornar_procedimentos_anexados = "S",
  raw = FALSE,
  sei_url = NULL,
  sigla_sistema = NULL,
  identificacao_servico = NULL,
  id_unidade = NULL,
  verbose = FALSE
)

Arguments

protocolo_procedimento

Character. Número do processo visível ao usuário, ex.: "0000000000.000003/2020-33".

config

Um objeto sei_config.

sin_retornar_assuntos, sin_retornar_interessados, sin_retornar_observacoes, sin_retornar_andamento_geracao, sin_retornar_andamento_conclusao, sin_retornar_ultimo_andamento, sin_retornar_unidades_procedimento_aberto, sin_retornar_procedimentos_relacionados, sin_retornar_procedimentos_anexados

"S" ou "N", indicando se cada bloco de informação deve ser retornado.

raw

Logical. Se TRUE, devolve o xml_document bruto em vez do tibble parseado.

sei_url, sigla_sistema, identificacao_servico, id_unidade

Compatibilidade: se informados, sobrescrevem os valores de config.

verbose

Logical. Se TRUE, imprime envelope e resposta.

Value

Um tibble com os dados do processo (ou um xml_document se raw = TRUE).

Examples

## Not run: 
  consultar_procedimento(
    "0000000000.000001/2020-11",
    config = sei_config(sigla_sistema = "HORTENSIAS",
                        identificacao_servico = "chave")
  )

## End(Not run)


consultar_procedimento_individual

Description

Chama a operação consultarProcedimentoIndividual do SEI, que retorna o processo individual mais recente do tipo informado onde o usuário é interessado (ou NA se nenhum for encontrado).

Usage

consultar_procedimento_individual(
  id_orgao_procedimento,
  id_tipo_procedimento,
  id_orgao_usuario,
  sigla_usuario,
  config = sei_config(),
  raw = FALSE,
  verbose = FALSE
)

Arguments

id_orgao_procedimento, id_tipo_procedimento, id_orgao_usuario, sigla_usuario

Identificadores exigidos pela operação.

config

Um objeto sei_config().

raw

Logical. Se TRUE, devolve o xml_document bruto.

verbose

Logical. Se TRUE, imprime envelope e resposta.

Value

Um tibble (ou xml_document se raw = TRUE).


consultar_procedimentos

Description

Consulta vários processos de uma vez e empilha os resultados em um único tibble. Cada protocolo é consultado com consultar_procedimento() e o resultado recebe uma coluna protocolo (o número consultado) e uma coluna erro (NA em caso de sucesso; a mensagem do erro caso a consulta falhe). Por padrão um protocolo com erro não interrompe o lote.

Usage

consultar_procedimentos(
  protocolos,
  config = sei_config(),
  parar_em_erro = FALSE,
  verbose = FALSE,
  ...
)

Arguments

protocolos

Vetor de números de processo (ex.: c("12.1.0001-1", ...)).

config

Um objeto sei_config().

parar_em_erro

Logical. Se TRUE, interrompe na primeira falha; se FALSE (padrão), registra o erro na coluna erro e segue.

verbose

Logical. Repassado a consultar_procedimento().

...

Demais argumentos repassados a consultar_procedimento() (ex.: os sinalizadores ⁠sin_retornar_*⁠). Não use raw aqui.

Value

Um tibble com uma linha por processo (colunas protocolo e erro além das de consultar_procedimento()). Linhas com erro têm NA nas demais colunas.

Examples

## Not run: 
  protos <- c("0000000000.000001/2020-11", "0000000000.000003/2020-33")
  tudo <- consultar_procedimentos(protos, config = sei_config())
  tudo[, c("protocolo", "Especificacao", "NivelAcessoGlobal", "erro")]

## End(Not run)


consultar_publicacao

Description

Chama a operação consultarPublicacao do SEI. Informe ao menos um filtro: id_publicacao, id_documento ou protocolo_documento.

Usage

consultar_publicacao(
  id_publicacao = NULL,
  id_documento = NULL,
  protocolo_documento = NULL,
  config = sei_config(),
  sin_retornar_andamento = "S",
  sin_retornar_assinaturas = "S",
  raw = FALSE,
  verbose = FALSE
)

Arguments

id_publicacao, id_documento, protocolo_documento

Filtros (informe um).

config

Um objeto sei_config().

sin_retornar_andamento, sin_retornar_assinaturas

"S" ou "N".

raw

Logical. Se TRUE, devolve o xml_document bruto.

verbose

Logical. Se TRUE, imprime envelope e resposta.

Value

Um tibble (ou xml_document se raw = TRUE).


consultar_publicacoes

Description

Consulta várias publicações de uma vez e empilha os resultados em um único tibble. Cada item é consultado com consultar_publicacao() usando o tipo de identificador indicado em por. O resultado recebe uma coluna id (o valor consultado) e uma coluna erro (NA em sucesso). Um item com erro não interrompe o lote (salvo parar_em_erro = TRUE).

Usage

consultar_publicacoes(
  ids,
  config = sei_config(),
  por = c("id_documento", "protocolo_documento", "id_publicacao"),
  parar_em_erro = FALSE,
  verbose = FALSE
)

Arguments

ids

Vetor de identificadores.

config

Um objeto sei_config().

por

Tipo do identificador em ids: "id_documento" (padrão), "protocolo_documento" ou "id_publicacao".

parar_em_erro

Logical. Se TRUE, interrompe na primeira falha.

verbose

Logical.

Value

Um tibble com uma linha por item (colunas id e erro além das de consultar_publicacao()).

Examples

## Not run: 
  consultar_publicacoes(c("20000002", "67640000"), por = "id_documento")

## End(Not run)


definir_controle_prazo

Description

Define controle de prazo para processos (definirControlePrazo).

Usage

definir_controle_prazo(definicoes, config = sei_config(), verbose = FALSE)

Arguments

definicoes

Lista de definições (cada uma com ProtocoloProcedimento e DataPrazo OU Dias/SinDiasUteis).

config

Um objeto sei_config().

verbose

Logical.

Value

TRUE em caso de sucesso.


definir_marcador

Description

Define marcadores em processos (definirMarcador).

Usage

definir_marcador(definicoes, config = sei_config(), verbose = FALSE)

Arguments

definicoes

Lista de definições (cada uma list(ProtocoloProcedimento=, IdMarcador=, Texto=)).

config

Um objeto sei_config().

verbose

Logical.

Value

TRUE em caso de sucesso.


desanexar_processo

Description

Desanexa um processo (desanexarProcesso).

Usage

desanexar_processo(
  protocolo_principal,
  protocolo_anexado,
  motivo,
  config = sei_config(),
  verbose = FALSE
)

Arguments

protocolo_principal, protocolo_anexado

Números dos processos.

motivo

Character. Motivo da desanexação.

config

Um objeto sei_config().

verbose

Logical.

Value

TRUE em caso de sucesso.


desbloquear_processo

Description

Desbloqueia um processo (desbloquearProcesso).

Usage

desbloquear_processo(
  protocolo_procedimento,
  config = sei_config(),
  verbose = FALSE
)

Arguments

protocolo_procedimento

Character. Número do processo.

config

Um objeto sei_config().

verbose

Logical.

Value

TRUE em caso de sucesso.


disponibilizar_bloco

Description

Disponibiliza um bloco (disponibilizarBloco).

Usage

disponibilizar_bloco(id_bloco, config = sei_config(), verbose = FALSE)

Arguments

id_bloco

Character. Número do bloco.

config

Um objeto sei_config().

verbose

Logical.

Value

TRUE em caso de sucesso.


enviar_email

Description

Envia um e-mail vinculado a um processo (enviarEmail).

Usage

enviar_email(
  protocolo_procedimento,
  de,
  para,
  assunto,
  mensagem,
  cco = NULL,
  id_documentos = NULL,
  config = sei_config(),
  raw = FALSE,
  verbose = FALSE
)

Arguments

protocolo_procedimento

Character. Número do processo.

de

Character. Endereço do remetente.

para

Vetor de destinatários (serão unidos por ";").

assunto, mensagem

Character.

cco

Vetor de destinatários em cópia oculta (opcional).

id_documentos

Vetor de ids de documentos a anexar (opcional).

config

Um objeto sei_config().

raw, verbose

Logical.

Value

Um tibble (parse_retorno_envio_email).


enviar_processo

Description

Envia (tramita) um processo para outras unidades (enviarProcesso).

Usage

enviar_processo(
  protocolo_procedimento,
  unidades_destino,
  config = sei_config(),
  sin_manter_aberto_unidade = "N",
  sin_remover_anotacao = "N",
  sin_enviar_email_notificacao = "N",
  data_retorno_programado = NULL,
  dias_retorno_programado = NULL,
  sin_dias_uteis_retorno_programado = "N",
  sin_reabrir = "N",
  verbose = FALSE
)

Arguments

protocolo_procedimento

Character. Número do processo.

unidades_destino

Vetor de ids de unidades de destino.

config

Um objeto sei_config().

sin_manter_aberto_unidade, sin_remover_anotacao, sin_enviar_email_notificacao

"S"/"N".

data_retorno_programado, dias_retorno_programado, sin_dias_uteis_retorno_programado

Retorno programado.

sin_reabrir

"S"/"N".

verbose

Logical.

Value

TRUE em caso de sucesso.


excluir_bloco

Description

Exclui um bloco (excluirBloco).

Usage

excluir_bloco(id_bloco, config = sei_config(), verbose = FALSE)

Arguments

id_bloco

Character. Número do bloco.

config

Um objeto sei_config().

verbose

Logical.

Value

TRUE em caso de sucesso.


excluir_documento

Description

Exclui um documento (excluirDocumento).

Usage

excluir_documento(protocolo_documento, config = sei_config(), verbose = FALSE)

Arguments

protocolo_documento

Character. Número do documento.

config

Um objeto sei_config().

verbose

Logical.

Value

TRUE em caso de sucesso.


excluir_processo

Description

Exclui um processo (excluirProcesso). Irreversível.

Usage

excluir_processo(
  protocolo_procedimento,
  config = sei_config(),
  verbose = FALSE
)

Arguments

protocolo_procedimento

Character. Número do processo.

config

Um objeto sei_config().

verbose

Logical.

Value

TRUE em caso de sucesso.


gerar_bloco

Description

Gera um bloco (gerarBloco). Retorna o número do bloco.

Usage

gerar_bloco(
  tipo,
  descricao,
  config = sei_config(),
  unidades_disponibilizacao = NULL,
  documentos = NULL,
  sin_disponibilizar = "N",
  verbose = FALSE
)

Arguments

tipo

Character. "A" (assinatura), "R" (reunião) ou "I" (interno).

descricao

Character. Descrição do bloco.

config

Um objeto sei_config().

unidades_disponibilizacao

Vetor de ids de unidades (ou NULL).

documentos

Vetor de protocolos de documentos (ou NULL).

sin_disponibilizar

"S"/"N".

verbose

Logical.

Value

Character com o IdBloco gerado.


gerar_procedimento

Description

Gera um novo processo (gerarProcedimento). Operação de escrita.

Usage

gerar_procedimento(
  procedimento,
  config = sei_config(),
  documentos = list(),
  procedimentos_relacionados = NULL,
  unidades_envio = NULL,
  sin_manter_aberto_unidade = "S",
  sin_enviar_email_notificacao = "N",
  data_retorno_programado = NULL,
  dias_retorno_programado = NULL,
  sin_dias_uteis_retorno_programado = "N",
  id_marcador = NULL,
  texto_marcador = NULL,
  data_controle_prazo = NULL,
  dias_controle_prazo = NULL,
  sin_dias_uteis_controle_prazo = "N",
  raw = FALSE,
  verbose = FALSE
)

Arguments

procedimento

Lista nomeada / objeto Procedimento() com os dados do processo.

config

Um objeto sei_config().

documentos

Lista de documentos a gerar junto (objetos Documento()); ou list().

procedimentos_relacionados, unidades_envio

Vetores de ids (opcionais).

sin_manter_aberto_unidade, sin_enviar_email_notificacao

"S"/"N".

data_retorno_programado, dias_retorno_programado, sin_dias_uteis_retorno_programado

Retorno programado.

id_marcador, texto_marcador

Marcador opcional.

data_controle_prazo, dias_controle_prazo, sin_dias_uteis_controle_prazo

Controle de prazo opcional.

raw, verbose

Logical.

Value

Um tibble (parse_retorno_geracao_procedimento) ou xml_document se raw=TRUE.


Retrieve SEI Credentials from Keyring

Description

Retrieves the stored SEI credentials for a given service_name from the keyring. If the keyring package is missing or if retrieval fails, the function displays a message instead of throwing an error, and returns NULL.

Usage

get_sei_credentials(service_name)

Arguments

service_name

Character string. The name of the service that identifies the SEI credentials in the keyring.

Value

A list containing:

Returns NULL if no credentials are found or if an error occurred.

Examples

## Not run: 
creds <- get_sei_credentials("SEI_WS")
if (!is.null(creds)) {
  cat("Username:", creds$username, "\n")
  cat("Password:", creds$password, "\n")
  cat("Extras:", "\n")
  print(creds$extras)
}

## End(Not run)


get_text: texto de um descendente por local-name

Description

Encontra o primeiro descendente de parent com o local-name informado (ignorando namespaces) e devolve seu texto, ou "" se ausente / xsi:nil="true". Mantido por compatibilidade; para extração ancorada em filho direto use o helper interno get_text_child.

Usage

get_text(parent, child_name)

Arguments

parent

Um nó xml2.

child_name

Character. O local-name do elemento a extrair.

Value

Uma string (possivelmente vazia).


incluir_documento

Description

Inclui um documento em um processo (incluirDocumento). Escrita.

Usage

incluir_documento(
  documento,
  config = sei_config(),
  raw = FALSE,
  verbose = FALSE
)

Arguments

documento

Lista nomeada / objeto Documento().

config

Um objeto sei_config().

raw, verbose

Logical.

Value

Um tibble (parse_retorno_inclusao_documento) ou xml_document.


incluir_documento_bloco

Description

Inclui um documento em um bloco (incluirDocumentoBloco).

Usage

incluir_documento_bloco(
  id_bloco,
  protocolo_documento,
  anotacao = NULL,
  config = sei_config(),
  verbose = FALSE
)

Arguments

id_bloco

Character. Número do bloco.

protocolo_documento

Character. Número do documento.

anotacao

Character opcional.

config

Um objeto sei_config().

verbose

Logical.

Value

TRUE em caso de sucesso.


incluir_processo_bloco

Description

Inclui um processo em um bloco (incluirProcessoBloco).

Usage

incluir_processo_bloco(
  id_bloco,
  protocolo_procedimento,
  anotacao = NULL,
  config = sei_config(),
  verbose = FALSE
)

Arguments

id_bloco

Character. Número do bloco.

protocolo_procedimento

Character. Número do processo.

anotacao

Character opcional.

config

Um objeto sei_config().

verbose

Logical.

Value

TRUE em caso de sucesso.


lancar_andamento

Description

Lança um andamento em um processo (lancarAndamento). Escrita.

Usage

lancar_andamento(
  protocolo_procedimento,
  config = sei_config(),
  id_tarefa = NULL,
  id_tarefa_modulo = NULL,
  atributos = list(),
  raw = FALSE,
  verbose = FALSE
)

Arguments

protocolo_procedimento

Character. Número do processo.

config

Um objeto sei_config().

id_tarefa, id_tarefa_modulo

Identificador da tarefa (informe um). id_tarefa deve ser >= 1000, ou 65 (atualização de andamento, com atributo DESCRICAO).

atributos

Lista de atributos (cada um list(Nome=, Valor=, IdOrigem=)).

raw, verbose

Logical.

Value

Um tibble do andamento gerado (parse_andamento_response).


listar_andamentos

Description

Lista andamentos de um processo (listarAndamentos). É preciso informar ao menos um filtro: andamentos, tarefas ou tarefas_modulos.

Usage

listar_andamentos(
  protocolo_procedimento,
  config = sei_config(),
  sin_retornar_atributos = "N",
  andamentos = NULL,
  tarefas = NULL,
  tarefas_modulos = NULL,
  raw = FALSE,
  verbose = FALSE
)

Arguments

protocolo_procedimento

Character. Número do processo.

config

Um objeto sei_config().

sin_retornar_atributos

"S" ou "N".

andamentos, tarefas, tarefas_modulos

Vetores de identificadores (filtro).

raw, verbose

Logical.

Value

Um tibble de andamentos (Atributos como coluna-lista).


listar_andamentos_completo

Description

Conveniência sobre listar_andamentos() que recupera a linha do tempo completa de um processo e a ordena cronologicamente. Como a operação listarAndamentos do SEI exige um filtro de tarefas, esta função usa por padrão um intervalo amplo de identificadores de tarefa (que cobre as tarefas internas do SEI: geração, documentos, assinaturas, envio, recebimento, conclusão, blocos, etc.).

Usage

listar_andamentos_completo(
  protocolo_procedimento,
  config = sei_config(),
  tarefas = 1:200,
  sin_retornar_atributos = "N",
  ordenar = TRUE,
  raw = FALSE,
  verbose = FALSE
)

Arguments

protocolo_procedimento

Character. Número do processo.

config

Um objeto sei_config().

tarefas

Vetor de identificadores de tarefa a recuperar (padrão 1:200, que abrange as tarefas internas do SEI).

sin_retornar_atributos

"S" ou "N".

ordenar

Logical. Se TRUE (padrão), ordena por DataHora (mais antigo primeiro).

raw, verbose

Logical.

Value

Um tibble de andamentos ordenado por data/hora (ver parse_andamento_item).

Examples

## Not run: 
  linha <- listar_andamentos_completo("12.1.000000077-4", config = sei_config())
  linha[, c("DataHora", "Descricao", "SiglaUnidade", "NomeUsuario")]

## End(Not run)


listar_andamentos_marcadores

Description

Lista os eventos de marcador de um processo (listarAndamentosMarcadores): cada item traz o texto do marcador, a data/hora, o usuário responsável e o marcador associado.

Usage

listar_andamentos_marcadores(
  protocolo_procedimento,
  config = sei_config(),
  marcadores = NULL,
  raw = FALSE,
  verbose = FALSE
)

Arguments

protocolo_procedimento

Character. Número do processo.

config

Um objeto sei_config().

marcadores

Vetor opcional de identificadores de marcador (filtro); se NULL, retorna todos.

raw, verbose

Logical.

Value

Um tibble com uma linha por evento de marcador.


listar_cargos

Description

Lista os cargos.

Usage

listar_cargos(
  config = sei_config(),
  id_cargo = NULL,
  raw = FALSE,
  verbose = FALSE
)

Arguments

config

Um objeto sei_config().

id_cargo

Filtro opcional.

raw, verbose

Logical.

Value

Um tibble de cargos.


listar_cidades

Description

Lista as cidades.

Usage

listar_cidades(
  config = sei_config(),
  id_pais = NULL,
  id_estado = NULL,
  raw = FALSE,
  verbose = FALSE
)

Arguments

config

Um objeto sei_config().

id_pais, id_estado

Filtros opcionais.

raw, verbose

Logical.

Value

Um tibble de cidades.


listar_contatos

Description

Lista contatos (paginado).

Usage

listar_contatos(
  config = sei_config(),
  id_tipo_contato = NULL,
  pagina_registros = NULL,
  pagina_atual = NULL,
  sigla = NULL,
  nome = NULL,
  cpf = NULL,
  cnpj = NULL,
  matricula = NULL,
  raw = FALSE,
  verbose = FALSE
)

Arguments

config

Um objeto sei_config().

id_tipo_contato, sigla, nome, cpf, cnpj, matricula

Filtros opcionais.

pagina_registros, pagina_atual

Paginação (1-1000; padrão 1).

raw, verbose

Logical.

Value

Um tibble de contatos.


listar_documentos_processo

Description

Reconstrói a lista de documentos de um processo a partir dos seus andamentos.

O Web Service do SEI não possui uma operação nativa para listar os documentos de um processo; portanto esta função recupera a linha do tempo com listar_andamentos_completo() e extrai os números de documento mencionados nas descrições (ex.: "Gerado documento ... 84230597"). É uma heurística: o resultado depende do texto dos andamentos e pode não captar 100% dos casos.

Usage

listar_documentos_processo(
  protocolo_procedimento,
  config = sei_config(),
  consultar = FALSE,
  verbose = FALSE
)

Arguments

protocolo_procedimento

Character. Número do processo.

config

Um objeto sei_config().

consultar

Logical. Se TRUE, consulta cada documento encontrado com consultar_documentos() e anexa os detalhes (série, data, unidade elaboradora, etc.). Faz uma chamada por documento.

verbose

Logical.

Value

Um tibble com uma linha por documento: documento (número), DataHora/SiglaUnidade/SiglaUsuario/NomeUsuario/Andamento da primeira menção (a geração). Com consultar = TRUE, inclui também as colunas de consultar_documento().

Examples

## Not run: 
  docs <- listar_documentos_processo("12.1.000000077-4", config = sei_config())
  docs[, c("documento", "DataHora", "SiglaUnidade", "NomeUsuario")]

  # com detalhes (série, data, etc.)
  listar_documentos_processo("12.1.000000077-4", consultar = TRUE)

## End(Not run)


listar_estados

Description

Lista os estados (UF).

Usage

listar_estados(
  config = sei_config(),
  id_pais = NULL,
  raw = FALSE,
  verbose = FALSE
)

Arguments

config

Um objeto sei_config().

id_pais

Filtro opcional.

raw, verbose

Logical.

Value

Um tibble de estados.


listar_extensoes_permitidas

Description

Lista as extensões de arquivo permitidas.

Usage

listar_extensoes_permitidas(
  config = sei_config(),
  id_arquivo_extensao = NULL,
  raw = FALSE,
  verbose = FALSE
)

Arguments

config

Um objeto sei_config().

id_arquivo_extensao

Filtro opcional.

raw, verbose

Logical.

Value

Um tibble de extensões.


listar_feriados

Description

Lista os feriados.

Usage

listar_feriados(
  config = sei_config(),
  id_orgao = NULL,
  data_inicial = NULL,
  data_final = NULL,
  raw = FALSE,
  verbose = FALSE
)

Arguments

config

Um objeto sei_config().

id_orgao, data_inicial, data_final

Filtros opcionais.

raw, verbose

Logical.

Value

Um tibble de feriados.


listar_hipoteses_legais

Description

Lista as hipóteses legais.

Usage

listar_hipoteses_legais(
  config = sei_config(),
  nivel_acesso = NULL,
  raw = FALSE,
  verbose = FALSE
)

Arguments

config

Um objeto sei_config().

nivel_acesso

Filtro opcional (1 - restrito, 2 - sigiloso).

raw, verbose

Logical.

Value

Um tibble de hipóteses legais.


listar_marcadores_unidade

Description

Lista os marcadores da unidade.

Usage

listar_marcadores_unidade(config = sei_config(), raw = FALSE, verbose = FALSE)

Arguments

config

Um objeto sei_config().

raw, verbose

Logical.

Value

Um tibble de marcadores.


listar_paises

Description

Lista os países.

Usage

listar_paises(config = sei_config(), raw = FALSE, verbose = FALSE)

Arguments

config

Um objeto sei_config().

raw, verbose

Logical.

Value

Um tibble de países.


listar_permissao

Description

Lista permissões no SIP (listarPermissao).

Usage

listar_permissao(
  config = sip_config(),
  id_orgao_usuario = NULL,
  id_usuario = NULL,
  id_origem_usuario = NULL,
  id_orgao_unidade = NULL,
  id_unidade = NULL,
  id_origem_unidade = NULL,
  id_perfil = NULL,
  raw = FALSE,
  verbose = FALSE
)

Arguments

config

Um objeto sip_config().

id_orgao_usuario, id_usuario, id_origem_usuario, id_orgao_unidade, id_unidade, id_origem_unidade, id_perfil

Filtros opcionais.

raw, verbose

Logical.

Value

Um tibble de permissões (ou xml_document se raw = TRUE).


listar_publicacoes_processo

Description

Lista as publicações de um processo. Como o Web Service do SEI não expõe isso diretamente, a função descobre os documentos do processo com listar_documentos_processo() e consulta a publicação de cada um (consultar_publicacoes()), mantendo apenas os documentos que de fato possuem publicação.

Usage

listar_publicacoes_processo(
  protocolo_procedimento,
  config = sei_config(),
  verbose = FALSE
)

Arguments

protocolo_procedimento

Character. Número do processo.

config

Um objeto sei_config().

verbose

Logical.

Value

Um tibble com uma linha por publicação (coluna id = número do documento, mais as colunas de consultar_publicacao()). Vazio se o processo não tiver publicações.

Examples

## Not run: 
  listar_publicacoes_processo("12.1.000000077-4", config = sei_config())

## End(Not run)


listar_series

Description

Lista os tipos de documento (séries) liberados ao serviço.

Usage

listar_series(
  config = sei_config(),
  id_unidade = NULL,
  id_tipo_procedimento = NULL,
  raw = FALSE,
  verbose = FALSE
)

Arguments

config

Um objeto sei_config().

id_unidade, id_tipo_procedimento

Filtros opcionais.

raw, verbose

Logical.

Value

Um tibble de séries.


listar_tipos_conferencia

Description

Lista os tipos de conferência.

Usage

listar_tipos_conferencia(
  config = sei_config(),
  id_unidade = NULL,
  raw = FALSE,
  verbose = FALSE
)

Arguments

config

Um objeto sei_config().

id_unidade

Filtro opcional.

raw, verbose

Logical.

Value

Um tibble de tipos de conferência.


listar_tipos_procedimento

Description

Lista os tipos de processo liberados ao serviço.

Usage

listar_tipos_procedimento(
  config = sei_config(),
  id_unidade = NULL,
  id_serie = NULL,
  raw = FALSE,
  verbose = FALSE
)

Arguments

config

Um objeto sei_config().

id_unidade, id_serie

Filtros opcionais.

raw, verbose

Logical.

Value

Um tibble de tipos de processo.


listar_tipos_procedimento_ouvidoria

Description

Lista os tipos de processo sinalizados como de Ouvidoria.

Usage

listar_tipos_procedimento_ouvidoria(
  config = sei_config(),
  raw = FALSE,
  verbose = FALSE
)

Arguments

config

Um objeto sei_config().

raw, verbose

Logical.

Value

Um tibble de tipos de processo.


listar_unidades

Description

Lista as unidades acessíveis ao serviço (listarUnidades).

Usage

listar_unidades(
  config = sei_config(),
  id_tipo_procedimento = NULL,
  id_serie = NULL,
  raw = FALSE,
  verbose = FALSE,
  sei_url = NULL,
  sigla_sistema = NULL,
  identificacao_servico = NULL
)

Arguments

config

Um objeto sei_config().

id_tipo_procedimento, id_serie

Filtros opcionais.

raw

Logical. Se TRUE, devolve o xml_document bruto.

verbose

Logical.

sei_url, sigla_sistema, identificacao_servico

Compatibilidade: sobrescrevem config.

Value

Um tibble de unidades (ou xml_document se raw = TRUE).


listar_usuarios

Description

Lista os usuários com perfil "Básico" na unidade.

Usage

listar_usuarios(
  config = sei_config(),
  id_usuario = NULL,
  raw = FALSE,
  verbose = FALSE
)

Arguments

config

Um objeto sei_config().

id_usuario

Filtro opcional.

raw, verbose

Logical.

Value

Um tibble de usuários.


parse_andamento: Parse a <Andamento> Node

Description

Parseia um nó <Andamento> (Descricao, DataHora, e as subestruturas Unidade e Usuario) num tibble de 1 linha. Se o nó for ausente ou xsi:nil="true", devolve uma linha de NA.

Usage

parse_andamento(node_and)

Arguments

node_and

Um nó xml2 representando um <Andamento>.

Value

Um tibble de 1 linha com Descricao, DataHora, IdUnidade, SiglaUnidade, DescricaoUnidade, IdUsuario, SiglaUsuario, NomeUsuario.


parse_andamento_item

Description

Parseia um ⁠<item>⁠ de Andamento no contexto de listarAndamentos (inclui IdAndamento/IdTarefa e Atributos).

Usage

parse_andamento_item(node)

Arguments

node

xml2 de um ⁠<item>⁠.

Value

Um tibble de 1 linha; Atributos é uma coluna-lista.


parse_andamento_marcador_item

Description

Parseia um ⁠<item>⁠ de AndamentoMarcador no contexto de listarAndamentosMarcadores (texto do marcador, data/hora, usuário e marcador associado).

Usage

parse_andamento_marcador_item(node)

Arguments

node

xml2 de um ⁠<item>⁠.

Value

Um tibble de 1 linha.


parse_andamento_response

Description

Parseia o retorno de lancarAndamento (um Andamento).

Usage

parse_andamento_response(doc)

Arguments

doc

Um xml2::xml_document.

Value

Um tibble de 1 linha (ver parse_andamento_item).


parse_arquivo_extensao

Description

Parseia uma estrutura ArquivoExtensao.

Usage

parse_arquivo_extensao(node)

Arguments

node

xml2.

Value

Um tibble de 1 linha.


parse_assinatura

Description

Parseia uma estrutura Assinatura.

Usage

parse_assinatura(node)

Arguments

node

xml2 da Assinatura (filho direto ou ⁠<item>⁠).

Value

Um tibble de 1 linha com os campos da assinatura.


parse_assunto

Description

Parseia um <item> de <Assuntos>.

Usage

parse_assunto(node_ass)

Arguments

node_ass

Um nó xml2 de <item>.

Value

Um tibble de 1 linha com CodigoEstruturado e Descricao.


parse_campo

Description

Parseia uma estrutura Campo (formulário).

Usage

parse_campo(node)

Arguments

node

xml2 do Campo.

Value

Um tibble de 1 linha com Nome e Valor.


parse_cargo

Description

Parseia uma estrutura Cargo.

Usage

parse_cargo(node)

Arguments

node

xml2.

Value

Um tibble de 1 linha.


parse_cidade

Description

Parseia uma estrutura Cidade.

Usage

parse_cidade(node)

Arguments

node

xml2.

Value

Um tibble de 1 linha.


parse_consultar_bloco_response

Description

Parseia a resposta de consultarBloco (RetornoConsultaBloco).

Usage

parse_consultar_bloco_response(doc)

Arguments

doc

Um xml2::xml_document.

Value

Um tibble de 1 linha. Unidade, Usuario e UsuarioAtribuicao viram colunas com prefixo; UnidadesDisponibilizacao e Protocolos ficam como colunas-lista.


parse_consultar_documento_response

Description

Parseia a resposta de consultarDocumento (RetornoConsultaDocumento).

Usage

parse_consultar_documento_response(doc)

Arguments

doc

Um xml2::xml_document.

Value

Um tibble de 1 linha. Serie, UnidadeElaboradora e AndamentoGeracao viram colunas com prefixo; Publicacao, Assinaturas e Campos ficam como colunas-lista.


parse_consultar_procedimento_individual_response

Description

Parseia a resposta de consultarProcedimentoIndividual (ProcedimentoResumido). Retorna linha de NA se nenhum processo for encontrado (parametros nulo).

Usage

parse_consultar_procedimento_individual_response(doc)

Arguments

doc

Um xml2::xml_document.

Value

Um tibble de 1 linha.


parse_consultar_procedimento_response

Description

Parser principal de consultarProcedimento: localiza o nó <parametros>, extrai os campos escalares, recodifica NivelAcessoLocal/NivelAcessoGlobal e parseia as subestruturas (TipoProcedimento, andamentos, e os arrays Assuntos, Interessados, etc.).

Usage

parse_consultar_procedimento_response(doc)

Arguments

doc

Um xml2::xml_document com a resposta de "consultarProcedimento".

Value

Um tibble de 1 linha. Campos escalares e subestruturas 1:1 (TipoProcedimento e andamentos) viram colunas com prefixo; arrays (Assuntos, Interessados, Observacoes, UnidadesProcedimentoAberto, ProcedimentosRelacionados, ProcedimentosAnexados) ficam como colunas-lista de tibbles.

Examples

## Not run: 
  doc <- consultar_procedimento("0000000000.000001/2020-11", raw = TRUE)
  parse_consultar_procedimento_response(doc)

## End(Not run)


parse_consultar_publicacao_response

Description

Parseia a resposta de consultarPublicacao (RetornoConsultaPublicacao).

Usage

parse_consultar_publicacao_response(doc)

Arguments

doc

Um xml2::xml_document.

Value

Um tibble de 1 linha. Publicacao e Andamento viram colunas com prefixo; Assinaturas fica como coluna-lista.


parse_contato

Description

Parseia uma estrutura Contato (subconjunto dos campos úteis).

Usage

parse_contato(node)

Arguments

node

xml2.

Value

Um tibble de 1 linha.


parse_estado

Description

Parseia uma estrutura Estado.

Usage

parse_estado(node)

Arguments

node

xml2.

Value

Um tibble de 1 linha.


parse_feriado

Description

Parseia uma estrutura Feriado.

Usage

parse_feriado(node)

Arguments

node

xml2.

Value

Um tibble de 1 linha.


Description

Parseia uma estrutura HipoteseLegal.

Usage

parse_hipotese_legal(node)

Arguments

node

xml2.

Value

Um tibble de 1 linha.


parse_imprensa_nacional

Description

Parseia uma estrutura PublicacaoImprensaNacional.

Usage

parse_imprensa_nacional(node)

Arguments

node

xml2.

Value

Um tibble de 1 linha.


parse_interessado

Description

Parseia um <item> de <Interessados>.

Usage

parse_interessado(nd_int)

Arguments

nd_int

Um nó xml2 de <item>.

Value

Um tibble de 1 linha com Sigla e Nome.


parse_list_response

Description

Parser genérico para respostas ⁠listar*⁠: encontra ⁠<parametros>⁠ (que é um array) e aplica item_parser a cada ⁠<item>⁠ filho direto. Para estruturas planas prefira o caminho vetorizado interno (via mapas de campo), bem mais rápido em listas grandes.

Usage

parse_list_response(doc, response_name, item_parser)

Arguments

doc

Um xml2::xml_document.

response_name

Character. Nome do elemento de resposta.

item_parser

Função que parseia um nó ⁠<item>⁠ num tibble de 1 linha.

Value

Um tibble com uma linha por item (vazio se não houver itens).


parse_marcador

Description

Parseia uma estrutura Marcador (sem Icone, que é Base64).

Usage

parse_marcador(node)

Arguments

node

xml2.

Value

Um tibble de 1 linha.


parse_observacao

Description

Parseia um <item> de <Observacoes>.

Usage

parse_observacao(nd_obs)

Arguments

nd_obs

Um nó xml2 de <item>.

Value

Um tibble de 1 linha com Descricao.


parse_pais

Description

Parseia uma estrutura Pais.

Usage

parse_pais(node)

Arguments

node

xml2.

Value

Um tibble de 1 linha.


parse_permissao

Description

Parseia uma estrutura Permissao do SIP.

Usage

parse_permissao(node)

Arguments

node

xml2.

Value

Um tibble de 1 linha.


parse_procedimento_resumido

Description

Parseia um <item> de <ProcedimentosRelacionados> ou <ProcedimentosAnexados>.

Usage

parse_procedimento_resumido(nd_pr)

Arguments

nd_pr

Um nó xml2 de <item>.

Value

Um tibble de 1 linha com IdProcedimento e ProcedimentoFormatado.


parse_protocolo_bloco

Description

Parseia uma estrutura ProtocoloBloco.

Usage

parse_protocolo_bloco(node)

Arguments

node

xml2 (um ⁠<item>⁠ de Protocolos).

Value

Um tibble de 1 linha com ProtocoloFormatado, Identificacao e Assinaturas (coluna-lista).


parse_publicacao

Description

Parseia uma estrutura Publicacao, com a ImprensaNacional aninhada como coluna-lista.

Usage

parse_publicacao(node)

Arguments

node

xml2 da Publicacao.

Value

Um tibble de 1 linha.


parse_retorno_envio_email

Description

Parseia o retorno de enviarEmail (RetornoEnvioEmail).

Usage

parse_retorno_envio_email(doc)

Arguments

doc

Um xml2::xml_document.

Value

Um tibble de 1 linha com IdDocumento, DocumentoFormatado, LinkAcesso.


parse_retorno_geracao_procedimento

Description

Parseia o retorno de gerarProcedimento (RetornoGeracaoProcedimento).

Usage

parse_retorno_geracao_procedimento(doc)

Arguments

doc

Um xml2::xml_document.

Value

Um tibble de 1 linha com IdProcedimento, ProcedimentoFormatado, LinkAcesso e RetornoInclusaoDocumentos (coluna-lista).


parse_retorno_inclusao_documento

Description

Parseia o retorno de incluirDocumento (RetornoInclusaoDocumento).

Usage

parse_retorno_inclusao_documento(doc)

Arguments

doc

Um xml2::xml_document.

Value

Um tibble de 1 linha com IdDocumento, DocumentoFormatado, LinkAcesso.


parse_serie

Description

Parseia uma estrutura Serie.

Usage

parse_serie(node)

Arguments

node

xml2 da Serie.

Value

Um tibble de 1 linha com IdSerie, Nome, Aplicabilidade.


parse_tipo_conferencia

Description

Parseia uma estrutura TipoConferencia.

Usage

parse_tipo_conferencia(node)

Arguments

node

xml2.

Value

Um tibble de 1 linha.


parse_tipo_procedimento

Description

Parseia uma estrutura TipoProcedimento.

Usage

parse_tipo_procedimento(node)

Arguments

node

xml2.

Value

Um tibble de 1 linha.


parse_unidade

Description

Parseia uma estrutura Unidade (filho direto ou ⁠<item>⁠).

Usage

parse_unidade(node)

Arguments

node

xml2 da Unidade.

Value

Um tibble de 1 linha com os campos da unidade.


parse_unidade_procedimento_aberto

Description

Parseia um <item> de <UnidadesProcedimentoAberto>, extraindo as subestruturas Unidade e UsuarioAtribuicao.

Usage

parse_unidade_procedimento_aberto(node_upa)

Arguments

node_upa

Um nó xml2 de um <item>.

Value

Um tibble de 1 linha com os campos da unidade e do usuário de atribuição.


parse_usuario

Description

Parseia uma estrutura Usuario.

Usage

parse_usuario(node)

Arguments

node

xml2.

Value

Um tibble de 1 linha.


reabrir_processo

Description

Reabre um processo na unidade (reabrirProcesso).

Usage

reabrir_processo(
  protocolo_procedimento,
  config = sei_config(),
  verbose = FALSE
)

Arguments

protocolo_procedimento

Character. Número do processo.

config

Um objeto sei_config().

verbose

Logical.

Value

TRUE em caso de sucesso.


Recodify SEI Access Level

Description

Converte os códigos numéricos de nível de acesso do SEI em texto: "0" -> "público", "1" -> "restrito", "2" -> "sigiloso". Valores ausentes, vazios ou fora de c("0","1","2") são devolvidos inalterados.

Usage

recodify_access_level(val)

Arguments

val

Character, geralmente "0", "1" ou "2".

Value

"público", "restrito", "sigiloso", ou o valor original.

Examples

recodify_access_level("0")  # "público"
recodify_access_level("2")  # "sigiloso"


relacionar_processo

Description

Relaciona dois processos (relacionarProcesso). Bilateral.

Usage

relacionar_processo(
  protocolo1,
  protocolo2,
  config = sei_config(),
  verbose = FALSE
)

Arguments

protocolo1, protocolo2

Números dos processos.

config

Um objeto sei_config().

verbose

Logical.

Value

TRUE em caso de sucesso.


remover_controle_prazo

Description

Remove o controle de prazo de processos (removerControlePrazo).

Usage

remover_controle_prazo(
  protocolos_procedimentos,
  config = sei_config(),
  verbose = FALSE
)

Arguments

protocolos_procedimentos

Vetor de números de processos.

config

Um objeto sei_config().

verbose

Logical.

Value

TRUE em caso de sucesso.


remover_relacionamento_processo

Description

Remove o relacionamento entre dois processos.

Usage

remover_relacionamento_processo(
  protocolo1,
  protocolo2,
  config = sei_config(),
  verbose = FALSE
)

Arguments

protocolo1, protocolo2

Números dos processos.

config

Um objeto sei_config().

verbose

Logical.

Value

TRUE em caso de sucesso.


remover_sobrestamento_processo

Description

Remove o sobrestamento de um processo.

Usage

remover_sobrestamento_processo(
  protocolo_procedimento,
  config = sei_config(),
  verbose = FALSE
)

Arguments

protocolo_procedimento

Character. Número do processo.

config

Um objeto sei_config().

verbose

Logical.

Value

TRUE em caso de sucesso.


replicar_permissao

Description

Replica (cadastra/altera/exclui) permissões no SIP (replicarPermissao).

Usage

replicar_permissao(permissoes, config = sip_config(), verbose = FALSE)

Arguments

permissoes

Lista de permissões; cada uma uma lista nomeada com campos da estrutura Permissao (ao menos StaOperacao, IdSistema, IdPerfil).

config

Um objeto sip_config().

verbose

Logical.

Value

TRUE em caso de sucesso.


replicar_usuario

Description

Replica (cadastra/altera/desativa/reativa) usuários no SIP (replicarUsuario).

Usage

replicar_usuario(
  usuarios,
  config = sip_config(),
  sin_considerar_orgao = "N",
  verbose = FALSE
)

Arguments

usuarios

Lista de usuários; cada um uma lista nomeada (ao menos StaOperacao e IdOrigem).

config

Um objeto sip_config().

sin_considerar_orgao

"S"/"N".

verbose

Logical.

Value

TRUE em caso de sucesso.


retirar_documento_bloco

Description

Retira um documento de um bloco (retirarDocumentoBloco).

Usage

retirar_documento_bloco(
  id_bloco,
  protocolo_documento,
  config = sei_config(),
  verbose = FALSE
)

Arguments

id_bloco, protocolo_documento

Identificadores.

config

Um objeto sei_config().

verbose

Logical.

Value

TRUE em caso de sucesso.


retirar_processo_bloco

Description

Retira um processo de um bloco (retirarProcessoBloco).

Usage

retirar_processo_bloco(
  id_bloco,
  protocolo_procedimento,
  config = sei_config(),
  verbose = FALSE
)

Arguments

id_bloco, protocolo_procedimento

Identificadores.

config

Um objeto sei_config().

verbose

Logical.

Value

TRUE em caso de sucesso.


Monta o Envelope SOAP do SEI

Description

Constrói o envelope SOAP 1.1 no formato esperado pelos Web Services do SEI, com os namespaces xsi/xsd/soapenv/sei e o atributo soapenv:encodingStyle na operação. Suporta parâmetros escalares, estruturas aninhadas (listas nomeadas) e arrays (listas não nomeadas, cada elemento renderizado como <item>).

Usage

sei_build_envelope(
  operation,
  params = list(),
  ns_prefix = "sei",
  ns_uri = "Sei"
)

Arguments

operation

Character. Nome da operação SOAP (ex.: "consultarProcedimento").

params

Lista nomeada de parâmetros do corpo da operação. Valores NULL são omitidos; NA vira xsi:nil="true".

ns_prefix

Character. Prefixo do namespace da operação (padrão "sei").

ns_uri

Character. URI do namespace da operação (padrão "Sei"; para o SIP use "sipns").

Value

Uma string com o envelope SOAP completo.

Examples

cat(sei_build_envelope("listarUnidades",
  list(SiglaSistema = "HORTENSIAS", IdentificacaoServico = "chave")))


Chamada Genérica a um Web Service do SEI

Description

Monta o envelope SOAP para operation com params, envia via httr2 e devolve a resposta como xml_document. Trata erros HTTP e SOAP Fault (o SEI retorna falhas em HTTP 500 com faultstring).

Usage

sei_call(
  operation,
  params = list(),
  config = sei_config(),
  soap_action = "SeiAction",
  ns_prefix = "sei",
  ns_uri = "Sei",
  timeout = 60,
  verbose = FALSE
)

Arguments

operation

Character. Nome da operação SOAP.

params

Lista nomeada de parâmetros (ver sei_build_envelope).

config

Um objeto sei_config.

soap_action

Character. Valor do cabeçalho SOAPAction.

ns_prefix, ns_uri

Namespace da operação (ver sei_build_envelope).

timeout

Numérico. Tempo máximo da requisição em segundos (padrão 60). Se esgotado (ou em falha de conexão), a função para com mensagem clara.

verbose

Logical. Se TRUE, imprime o envelope enviado e a resposta.

Value

Um xml2::xml_document com a resposta SOAP.

Examples

## Not run: 
  doc <- sei_call("listarUnidades",
    params = list(SiglaSistema = "HORTENSIAS",
                  IdentificacaoServico = "chave"),
    config = sei_config())

## End(Not run)


SEI Connection Configuration

Description

Builds a configuration object holding the values that every SEI Web Service call needs: the endpoint URL, the system sigla (SiglaSistema), the service access key (IdentificacaoServico) and the default unit id (IdUnidade). Values are resolved, in order, from the arguments, options(rsei.*) and environment variables (RSEI_*).

The package is not tied to any particular SEI installation: set sei_url to the Web Service endpoint of your own SEI server, e.g. "https://sei.<your-org>.gov.br/sei/ws/SeiWS.php" (or the controlador_ws.php?servico=sei form).

Usage

sei_config(
  sei_url = NULL,
  sigla_sistema = NULL,
  identificacao_servico = NULL,
  id_unidade = NULL
)

Arguments

sei_url

Character. SEI Web Service endpoint (required for live calls). Resolves from the argument, getOption("rsei.sei_url") or Sys.getenv("RSEI_URL"). There is no built-in default, so the package works with any SEI installation.

sigla_sistema

Character. System sigla registered in SEI.

identificacao_servico

Character. Service access key (chave de acesso).

id_unidade

Character. Default unit id; many operations accept an empty string.

Value

An object of class "sei_config": a named list with sei_url, sigla_sistema, identificacao_servico and id_unidade.

Examples

cfg <- sei_config(
  sei_url = "https://sei.exemplo.gov.br/sei/ws/SeiWS.php",
  sigla_sistema = "MEU_SISTEMA",
  identificacao_servico = "minha-chave"
)
cfg$sei_url


Localiza o nó <parametros> da Resposta

Description

Helper interno que encontra o nó parametros dentro de uma resposta <...Response>, ignorando namespaces. Base para os parsers.

Usage

sei_find_parametros(doc, response = NULL)

Arguments

doc

Um xml2::xml_document (resposta SOAP).

response

Character opcional. Nome do elemento de resposta (ex.: "consultarProcedimentoResponse") para ancorar a busca.

Value

O nó parametros, ou NULL se não encontrado.


Generate a New Procedure (gerarProcedimento)

Description

Wrapper de exemplo para a operação gerarProcedimento do SEI. Monta a lista de parâmetros e chama sei_call. Operação de escrita: use preferencialmente em servidor de homologação/treino.

Usage

sei_generate_procedure(
  sei_url,
  sigla_sistema,
  identificacao_servico,
  id_unidade,
  procedimento = list(),
  verbose = FALSE
)

Arguments

sei_url

Character. URL do Web Service do SEI.

sigla_sistema

Character. Sigla do sistema registrada no SEI.

identificacao_servico

Character. Chave de acesso / id do serviço.

id_unidade

Character. Id da unidade.

procedimento

Lista nomeada com a estrutura Procedimento, ex.: list(IdTipoProcedimento = "100000368", Especificacao = "Teste").

verbose

Logical. Se TRUE, imprime envelope e resposta.

Value

Um xml_document com a resposta SOAP (a ser parseada).

Examples

## Not run: 
  resp <- sei_generate_procedure(
    sei_url = "https://sei.exemplo.gov.br/sei/controlador_ws.php?servico=sei",
    sigla_sistema = "HORTENSIAS",
    identificacao_servico = "chave",
    id_unidade = "100000969",
    procedimento = list(IdTipoProcedimento = "100000368",
                        Especificacao = "Teste")
  )

## End(Not run)


Set Default SEI Configuration for the Session

Description

Stores the given configuration values as options(rsei.*) so subsequent calls to sei_config (and therefore every operation) pick them up without having to pass config explicitly.

Usage

sei_set_default_config(
  sei_url = NULL,
  sigla_sistema = NULL,
  identificacao_servico = NULL,
  id_unidade = NULL
)

Arguments

sei_url

Character. SEI Web Service endpoint (required for live calls). Resolves from the argument, getOption("rsei.sei_url") or Sys.getenv("RSEI_URL"). There is no built-in default, so the package works with any SEI installation.

sigla_sistema

Character. System sigla registered in SEI.

identificacao_servico

Character. Service access key (chave de acesso).

id_unidade

Character. Default unit id; many operations accept an empty string.

Value

Invisibly, the previous options (as returned by options()).

Examples

## Not run: 
sei_set_default_config(
  sigla_sistema = "HORTENSIAS",
  identificacao_servico = Sys.getenv("RSEI_IDENTIFICACAO_SERVICO")
)

## End(Not run)


Escape de texto para XML

Description

Escapa os cinco caracteres reservados de XML (&, <, >, as aspas duplas e o apóstrofo) em um valor escalar. Usado internamente ao montar os parâmetros do envelope SOAP.

Usage

sei_xml_escape(x)

Arguments

x

Vetor de tamanho 1 (será coagido para character).

Value

Uma string com os caracteres reservados escapados.


Chamada genérica a um Web Service do SIP

Description

Envia uma operação SIP usando o namespace "sipns" e a SOAPAction "sipnsAction". Delega para sei_call().

Usage

sip_call(operation, params = list(), config = sip_config(), verbose = FALSE)

Arguments

operation

Character. Nome da operação SIP.

params

Lista nomeada de parâmetros (ver sei_build_envelope()).

config

Um objeto sip_config().

verbose

Logical.

Value

Um xml2::xml_document.


Configuração de conexão SIP

Description

Objeto com os dados das chamadas SIP: URL do Web Service, Chave de Acesso e IdSistema. Valores resolvem de argumentos, ⁠options(rsei.sip_*)⁠ e variáveis ⁠RSEI_SIP_*⁠. Sem URL embutida — serve a qualquer instalação do SIP.

Usage

sip_config(sip_url = NULL, chave_acesso = NULL, id_sistema = NULL)

Arguments

sip_url

Character. Endpoint do SIP (ex.: "https://sei.<seu-orgao>.gov.br/sip/controlador_ws.php?servico=sip").

chave_acesso

Character. Chave de Acesso do SIP.

id_sistema

Character. Id do sistema no SIP.

Value

Um objeto de classe sip_config.


sobrestar_processo

Description

Sobresta um processo (sobrestarProcesso).

Usage

sobrestar_processo(
  protocolo_procedimento,
  motivo,
  protocolo_vinculado = NULL,
  config = sei_config(),
  verbose = FALSE
)

Arguments

protocolo_procedimento

Character. Número do processo.

motivo

Character. Motivo do sobrestamento.

protocolo_vinculado

Character opcional. Processo vinculado.

config

Um objeto sei_config().

verbose

Logical.

Value

TRUE em caso de sucesso.


Store SEI Credentials in Keyring

Description

Stores (or updates) credentials for the SEI web service in the keyring. If the keyring package is not installed or if the store operation fails, it simply displays a message instead of throwing an error.

Usage

store_sei_credentials(service_name, username = NULL, password, ...)

Arguments

service_name

Character string. The name of the service that identifies this set of credentials (e.g., "SEI_WS").

username

Optional. The username or system alias used for SEI, if applicable. Defaults to "default_user" if not provided.

password

The SEI access key or password to be stored.

...

Other parameters you wish to store in the keyring (e.g., URL, unit ID, etc.). These will be serialized as JSON under a separate username ("EXTRAS").

Value

Invisibly returns a logical value: TRUE if credentials were stored successfully, or FALSE otherwise.

Examples

## Not run: 
store_sei_credentials(
  service_name = "SEI_WS",
  username = "MySystemSigla",
  password = "MySEIAccessKey",
  url = "https://myserver/sei/controlador_ws.php?servico=sei",
  unit_id = "100000969"
)

## End(Not run)

These binaries (installable software) and packages are in development.
They may not be fully stable and should be used with caution. We make no claims about them.
Health stats visible at Monitor.