◼️ 6. Workflow

6.1.GET Buscar configurações de fluxos V1

O objetivo deste método é permitir que o usuário busque as configurações de fluxo (desenho do fluxo) do cliente informado.

URL

https://api-rest.arquivar.com/api/ConfWorkflow/{idCliente}

Entrada

Neste serviço o usuário deve informar o id do cliente que deseja buscar as configurações de fluxos.

• idCliente

Validações

O sistema valida:

• A permissão do usuário autenticado.

• Se o usuário está vinculado ao cliente informado.

Saída/Retorno

O sistema retorna as configurações de fluxo do cliente.

Response

“`json
[
{
“IdCliente”: “guid”,//id do cliente
“IdConfWorkflow”: “guid”,//id do desenho do fluxo
“NomeFluxo”: “string”,//nome desenho do fluxo
“Status”: “char”,//status do desenho do fluxo
“TipoAtivacao”: “char”,//tipo de ativação do desenho do fluxo
“Formulario”: null //informação se o desenho do fluxo possui formulário
},
{
“IdCliente”: “guid”,
“IdConfWorkflow”: “guid”,
“NomeFluxo”: “string”,
“Status”: “char”,
“TipoAtivacao”: “char”,
“Formulario”: null
},
]
“`


6.2.POST Ativar um fluxo V1

O objetivo deste método é permitir que o usuário ative fluxos baseado em um fluxograma já configurado para o cliente informado, considerando as seguintes regras:

1ª. Apenas desenho de fluxo do tipo ativação “Automática” ou “API Integração” podem ser ativados por este serviço.

2ª. O serviço “Post Workflow”, pode simplesmente ativar um fluxo, ou ativar um fluxo enviando itens como:

a. Documentos a serem cadastrado, juntamente com seus arquivos (se houver);

b. Anexos do fluxo;

c. Observação.

3ª. Quando a configuração de fluxo for do tipo ativação “API Integração” e possuir na primeira tarefa o responsável “API Integração”, o serviço “Post Workflow” poderá receber outros dados, além dos descritos acima. Estes dados são:

a. Comentário;

b. Formulário;

c. Compartilhar anexo do tipo PDF dos registros que estiverem sedo enviados;

d. Marcar para assinar anexo do tipo PDF dos registros e dos fluxos, para tarefas de acesso externos subsequentes.

Somente é possível marcar para assinar anexos dos documentos, quando estes estiverem compartilhados (mesma regra existente no ArqGED).

Um fluxo com o responsável “API Integração” na primeira tarefa, será ativado e terá esta primeira etapa concluída automaticamente. Esta etapa é configurada apenas para receber os itens descritos acima e para definir obrigatoriedades dos parâmetros do fluxo se necessário.

URL

Entrada

Neste serviço o usuário deve informar JSON com os dados do fluxo que será ativado.

Request body

“`json
{
“idCliente”: “guid”,// id do cliente
“idConfWorkflow”: “guid”,//id do desenho do fluxo
“idUsuario”: “guid”,
“email”: “string”,
“observacao”: “string”,
“comentario”: “string”,
“formulario”: {//formulário do fluxo, se houver
“idFormulario”: “guid”,
“camposFormulario”: [
{
“idCampo”: “guid”,
“labelCampo”: “string”,
“valorCampo”: “string”
}
]
},
“documentos”: [//documento associados ao fluxo, se houver
{
“codigoCaixa”: int,
“idArvoreOrganizacional”: “guid”,
“valoresCampos”: [
{
“nomeLista”: “string”,
“label”: “string”,
“valorCampo”: “string”
}
],
“arquivos”: [//anexos do documento associado ao fluxo, se houver
{
“arquivo”: “string”,
“extensao”: “string”,
“assinar”: true,
“versao”: “string”,
“nomeAmigavel”: “string”,
“compartilhado”: true
}
]
}
],
“arquivos”: [//anexos do fluxo, se houver
{
“arquivo”: “string”,
“extensao”: “string”,
“assinar”: true,
“versao”: “string”,
“nomeArquivo”: “string”
}
],
“selecionadoExternoVarios”: [
“string”,
“string”
],
“emailGrupoExterno”: [
“string”
]
}
“`

IdCliente: Id do cliente do fluxo. [Obrigatório]

IdConfWorkflow: Id da configuração do fluxo do cliente que será ativado. [Obrigatório]

Email: Email para o usuário responsável. [Obrigatório quando a primeira tarefa do IdConfWorkflow for responsável “Selecionado Externo“.]

IdUsuario: Id do usuário responsável. [Obrigatório quando a primeira tarefa do IdConfWorkflow for responsável “Selecionado“.]

Observacao: Observação para o fluxo que será ativado. [Opcional]

Comentario: Comentário para a primeira tarefa. [Obrigatório quando a primeira tarefa do IdConfWorkflow for responsável “API Integração” e na tarefa em questão é obrigatório inserir comentário]

Formulario: Dados do formulário. [Obrigatório quando a primeira tarefa do IdConfWorkflow for responsável “API Integração” e na tarefa em questão é obrigatório inserir dados do formulário]

Documentos: Cadastrar documentos. [Obrigatório quando a primeira tarefa do IdConfWorkflow for responsável “API Integração” e na tarefa em questão é obrigatório cadastrar documentos]

Arquivos: Anexar arquivos ao fluxo. [Obrigatório quando a primeira tarefa do IdConfWorkflow for responsável “API Integração” e na tarefa em questão é obrigatório inserir anexos do fluxo]

SelecionadoExternoVarios: E-mail dos usuários externos para a primeira tarefa.

Obrigatório quando:

  • A primeira tarefa do IdConfWorkflow for responsável ” Selecionado externo vários
  • A primeira tarefa do IdConfWorkflow for responsável “API Integração” e na tarefa subsequente à primeira tarefa for responsável “Selecionado externo vários

EmailGrupoExterno: E-mail dos usuários externos para a primeira tarefa com agrupamento.

Obrigatório quando:

  • A primeira tarefa do IdConfWorkflow for em grupo com responsável “”Selecionado externo único”.

Validações

O sistema valida:

• A permissão do usuário autenticado.

• Se o usuário está vinculado ao cliente informado.

• Se o idConfWorkflow pertence ao cliente informado.

• Os campos de formulário, se houver.

Saída/Retorno

O sistema retorna o código do fluxo ativado.

Code 200 OK

Response

“`json
{
“CodigoWorkflow”: 1043818,
“Mensagem”: “Fluxo ativado com sucesso.”
}
“`


6.3.PATCH Associar documentos a um fluxo V1

URL

https://api-rest.arquivar.com/api/Workflow/Cliente/{idCliente}/associar-documentos

Entrada

• idCliente

• JSON com os ids dos documentos que serão associados ao fluxo.

Quando informado o idWorkflow e não souber o codigoWorkflow, este deve ser incluído como Null.

O usuário poderá associar um ou mais documentos ao fluxo.

Request body

“`json
{
“idWorkflow”: “guid”, //id do fluxo
“codigoWorkflow”: 0, // código do fluxo
“documentos”: [//ids dos documentos que serão associados ao fluxo
“guid”,
“guid”
]
}
“`

Saída/Retorno

O sistema retorna o status 200 OK

Response

“`json
“Registros associados com sucesso”
“`


6.4.GET Buscar fluxos ativados de uma configuração V1

URL

https://api-rest.arquivar.com/api/ConfWorkflow/{idConfWorkflow}/Cliente/{idCliente}/fluxos-ativados[?Status][&IdTarefa][&Pagina][&BuscarQtdPaginas]

Entrada

• idCliente

• idConfWorkflow

• Status

• IdTarefa

• Pagina

• BuscarQtdPaginas

Saída/Retorno

• O sistema retorna os fluxos ativados do idConfWorkflow informado.

• Os campos “TotalDePaginasDaConsulta” e “TotalDeRegistrosDaConsulta” serão retornados somente se o parametro BuscarQtdPaginas for informado.

Response

“`json
{
“TotalDePaginasDaConsulta”: int, //total de páginas retornados na consulta
“TotalDeRegistrosDaConsulta”: int, //total de registros retornados na consulta
“Dados”: [ // dados dos fluxos ativados
{
“IdWorkflow”: “guid”,// id do fluxo
“CodigoWorkflow”: int, //código do fluxo
“Status”: int, //status do fluxo
“DataInicio”: “string”,// data início do fluxo
“DataFim”: “string”,// data fim do fluxo
“Observacao”: null, // observação do fluxo, se houver
“EtapaAtual”: {//dados da etapa atual do fluxo
“IdEtapa”: “guid”,// id da etapa atual do fluxo
“IdTarefa”: “guid”,// id da tarefa atual do fluxo
“NomeTarefa”: “string”,//nome da tarefa atual do fluxo
“DataInicioTarefa”: “string”,// data inicial da tarefa
“DataFimTarefa”: “string”,//data fim da tarefa
“PrevisaoTermino”: “string”,// previsão de termino da tarefa atual
“Atrasada”: true //true = atrasada, false = em dia
}
},
{
“IdWorkflow”: “guid”,
“CodigoWorkflow”: int,
“Status”: int,
“DataInicio”: “string”,
“DataFim”: “strin”,
“Observacao”: null,
“EtapaAtual”: {
“IdEtapa”: “guid”,
“IdTarefa”: “guid”,
“NomeTarefa”: “string”,
“DataInicioTarefa”: “string”,
“DataFimTarefa”: “string”,
“PrevisaoTermino”: “string”,
“Atrasada”: true
}
}
]
}
“`


6.5.GET Buscar dados de um fluxo V1

URL

https://api-rest.arquivar.com/api/Workflow/Cliente/{idCliente}/dados-fluxo[?IdWorkflow][&CodigoWorkflow]

Entrada

• idCliente

• IdWorkflow ou CodigoWorkflow

Saída/Retorno

• O sistema retorna os dados do fluxo informado.

• Um fluxo pode ter um ou mais arquivos relacionados.

• Um fluxo pode ter um ou mais documentos relacionados.

Response

“`json
{
“status”: int, //status do fluxo
“etapaAtual”: [//etapa atual do fluxo
{
“idTarefa”: “guid”,//id da tarefa atual do fluxo
“nomeTarefa”: “string”,//nome da tarefa atual do fluxo
“execucoesTarefa”: [//execuções do fluxo
{
“idWorkflowEtapaExecucao”: “guid”, //id da execução da etapa atual do fluxo
“usuario”: “string”,//usuário responsável da tarefa(interna)
“email”: “string”,//e-mail do usuário responsável da tarefa (externa)
“concluida”: int, //informação se tarefa concluída ou não
“dataInicio”: “string”,//data início da tarefa
“dataFim”: “string”,//data fim da tarefa, se concluída
“previsaoTermino”: “string”,//previsão de término da tarefa
“atrasada”: true //true = atrasada, false = em dia
}
]
}
],
“anexosFluxo”: [//anexos do fluxo, se houver
{
“idArquivo”: “guid”,//id do arquivo
“nomeArquivo”: “string”,//nome do arquivo
“assinar”: true //informação se o arquivo está marcado para assinar
}
],
“documentosFluxo”: [//documentos do fluxo, se houver
{
“idDocumento”: “guid”,//id do documento
“codigoDocumento”: int, //código do documento
“idArvoreOrganizacional”: “guid”,//id da arvore do documento
“arquivosDocumento”: [//arquivos do documento
{
“idArquivoDocumento”: “guid”,//id do arquivo do documento
“nomeArquivo”: “string”,//nome do arquivo do documento
“compartilhado”: true, //informação se o arquivo está marcado para compartilhar
“assinar”: true //informação se o arquivo está marcado para assinar
}
]
}
],
“comentarios”: [//comentários do fluxo, se houver
{
“nomeTarefa”: “string”,//nome da tarefa que foi incluído o comentário
“usuario”: “string”,//usuário quem fez o comentário (interno)
“email”: “string”,//e-mail do usuário quem fez o comentário (externo)
“dataHora”: “string”,//data e hora do comentário
“comentario”: “string”//conteúdo do comentário
}
],
“formulario”: [//formulário do fluxo, se houver
{
“idCampo”: “guid”,//id do campo do formulário
“nomeCampo”: “string”,//nome do campo do formulário
“valor”: “string”,//valor do campo do formulário
“idLista”: “guid”,//id lista do campo do formulário, se houver
“nomeLista”: “string”//nome da lista do campo do formulário se houver
}
]
}
“`


6.6.GET Buscar modelo de um fluxo V1

URL

https://api-rest.arquivar.com/api/Workflow/Cliente/{idCliente}/modelo-fluxo[?IdWorkflow][&CodigoWorkflow]

Entrada

• idCliente

• IdWorkflow ou CodigoWorkflow

Saída/Retorno:

• O sistema retorna os campos da lista informada.

Response

“`json
{
“nomeModelo”: “string”,//nome do modelo do fluxo
“arquivoModelo”: “bytes”//bytes do modelo do fluxo
}
“`


6.7.PATCH Atualizar formulário de um fluxo V1

URL

https://api-rest.arquivar.com/api/Workflow/EtapaExecucao/{idWorkflowEtapaExecucao}/Cliente/{idCliente}/atualizar-dados-formulario

Entrada

• idCliente

• IdWorkflowEtapaExecucao

• JSON com os campos do formulário que serão alterados.

É obrigatório informar o idWorkflow ou codigoWorkflow.

Request body

“`json
{
“idWorkflow”: “guid”,//id do fluxo
“codigoWorkflow”: 0, //código do fluxo
“campos”: [
{
“idLista”: “guid”,//id da lista se o campo for de lista
“idCampo”: “guid”,//id do campo que será alterado
“valor”: “string”//novo valor do campo do formulário
},
{
“idLista”: “”,
“idCampo”: “guid”,
“valor”: “string”
}
]
}
“`

Saída/Retorno

O sistema retorna o status 200 OK.

Response

“`json
OK
“`

Atualizado há 10 dias

×