Finalizar uma tarefa pendente

Como executar uma atividade pendente no Zeev utilizando API'?

Para finalizar, ou seja executar uma tarefa pendente no Zeev utilizando API, existem duas maneiras, são elas:

Como finalizar uma atividade utilizando API e o código de atribuição da atividade?

Para finalizar uma atividade pendente, utilizando a API do Zeev e o código de atribuição, siga os passos abaixo:

  1. Autenticação: Primeiro obtenha um token de autenticação com permissão de realizar essa operação;

  2. Obter o assingnmentid: Utilize as API's do Zeev para obter o ID de atribuição conforme explicado nesta página.

  3. Obter os tipos de resultado possíveis: Verifique as opções de botão disponíveis para finalizar a tarefa, obtenha na página de configuração da atividade através da modelagem do processo ou utilizando API, veja como em Como obter a lista de ações / botões disponíveis para finalizar uma atividade / tarefa, utilizando API?. Este valor deve ser informado no atributo result do corpo da requisição.

  4. Enviar a Requisição: Utilize o endpoint Finalizar uma tarefa pendente para enviar a requisição conforme modelo e exemplo (Troque seu_endereco.do.zeev pelo endereço que você usa para acessar o Zeev):

  5. Rate limit: Se for finalizar tarefas em lote, respeite os limites máximos de solicitações;

Finalizar tarefa atribuída a uma pessoa por código identificador da atribuição de atividade (Auth)

put
Autorizações
Parâmetros de rota
assignmentIdinteger · int64Obrigatório

Identificador da atribuição de atividade

Corpo
resultstringOpcional

Identificador ou descritivo da ação de um dos botões de ação da tarefa, que finaliza a tarefa atual

reasonstring · máx: 1024Opcional

Justificativa opcional da ação selecionada

logInMinutesinteger · int32Opcional

Tempo em minutos necessário para executar a atividade

Respostas
200

Sucesso

put
PUT /api/2/assignments/{assignmentid} HTTP/1.1
Host: seu_endereco.do.zeev
Authorization: YOUR_API_KEY
Content-Type: application/json
Accept: */*
Content-Length: 279

{
  "result": "text",
  "reason": "text",
  "logInMinutes": 1,
  "formFields": [
    {
      "id": 1,
      "name": "text",
      "value": "text",
      "row": 1
    }
  ],
  "messages": [
    {
      "messageBody": "text",
      "requesterCanSee": true
    }
  ],
  "files": [
    {
      "filename": "text",
      "resume": "text",
      "requesterCanSee": true,
      "docType": "text",
      "base64Content": "text"
    }
  ]
}
{
  "result": "text",
  "reason": "text",
  "logInMinutes": 1,
  "formFields": [
    {
      "id": 1,
      "name": "text",
      "value": "text",
      "row": 1
    }
  ],
  "messages": [
    {
      "messageBody": "text",
      "requesterCanSee": true
    }
  ],
  "files": [
    {
      "filename": "text",
      "resume": "text",
      "requesterCanSee": true,
      "docType": "text",
      "base64Content": "text"
    }
  ]
}

Exemplo de requisição para finalizar tarefa por código de atribuição

const myHeaders = new Headers();
myHeaders.append("Accept", "application/json");
myHeaders.append("Content-Type", "application/json");
myHeaders.append("Authorization", "Bearer TOKEN_DO_USUARIO");

const raw = JSON.stringify({
  "result": "concluído",
  "reason": "Informe aqui a justificativa, se aplicável",
  "formFields": [
    //Lista dos campos que deseja preencher se aplicável
    {
      "name": "nome",
      "value": "John",
      "row": 1
    },
    {
      "name": "idade",
      "value": "29",
      "row": 1
    }
  ],
  "messages": [
  //Inclusão de mensagens na tarefa
    {
      "messageBody": "Texto de mensagem incluída na instância do Zeev e vísivel para o requisitante",
      "requesterCanSee": true //esta mensagem pode ser visualizada pela pessoa que fez a solicitação
    },
    {
      "messageBody": "Texto de mensagem incluída na instância do Zeev e invísivel para o requisitante",
      "requesterCanSee": false //esta mensagem não pode ser visualizada pela pessoa que fez a requisição
    }
  ],
  "files": [
    //Lista de arquivos a serem adicionados se aplicável
    {
      "filename": "RG.JPG",
      "base64Content": "64AZNGHZTE",
      "resume": "minim anim eiusmod",
      "requesterCanSee": true,
      "docType": "Ut"
    },
    {
      "filename": "ullamco",
      "base64Content": "cupidatat",
      "resume": "proident reprehenderit adipisicing dolore",
      "requesterCanSee": false,
      "docType": "in esse nulla"
    }
  ]
});

const requestOptions = {
  method: "PUT",
  headers: myHeaders,
  body: raw
};

try {
  const response = await fetch("http://localhost:91/api/2/assignments/:assignmentid", requestOptions);
  const result = await response.text();
  console.log(result)
} catch (error) {
  console.error(error);
};

Como finalizar uma atividade pendente atribuída à pessoa, utilizando API, o código da instância e o código original/integração (apelido do elemento da tarefa)?

É possível utilizar as API's do Zeev para finalizar atividades, enviando como parâmetros o código da instância e código original/Integração. Para isso a pessoa autenticada na API deve ser responsável pela tarefa.

Siga os passos abaixo para finalizar a atividade de acordo com os critérios definidos acima:

  1. Autenticação: Primeiro obtenha um token de autenticação com permissão de realizar essa operação;

  2. Obtenha o Id da instância: Obtenha o ID da instância que desjea finalizar, você pode fazer isso navegando nas páginas do Zeev, em Monitorar > Solicitações, em Acompanhar solicitações ou ainda utilizando as API's disponíveis como descrito nesta página;

  3. Obtenha o Código original (alias do elemento) da atividade pendente: Você pode obter o código original da atividade na tela do modelador de processos ao abrir as configurações da atividade. Se desejar, este valor também pode ser obtido utilizando API's, ele é uma propriedade que retorna em algumas consultas de atribuição de atividades como no endpoint Listar minhas tarefas pendentes. La este valor fica na seguinte estrutura do corpo de resposta instance > instanceTask > task > element > alias. Consulte mais opções de API's que retornam estes dados em Listar minhas tarefas pendentes;

  4. Obter os tipos de resultado possíveis: Verifique as opções de botão disponíveis para finalizar a tarefa, obtenha na página de configuração da atividade através da modelagem do processo ou utilizando a API descrita em Finalizar uma tarefa pendente. Este valor deve ser informado no atributo result do corpo da requisição;

  5. Enviar a Requisição: Utilize o endpoint Finalizar uma tarefa pendente para enviar a requisição conforme modelo e exemplo (Troque seu_endereco.do.zeev pelo endereço que você usa para acessar o Zeev)

Finalizar tarefa atribuída a pessoa por código da instância e código original/integração ou apelido do elemento da tarefa pendente (Auth)

put
Autorizações
Parâmetros de rota
instanceIdinteger · int32Obrigatório

Identificador instância

codestringObrigatório

Código original / integração (apelido) do elemento pendente

Corpo
resultstringOpcional

Identificador ou descritivo da ação de um dos botões de ação da tarefa, que finaliza a tarefa atual

reasonstring · máx: 1024Opcional

Justificativa opcional da ação selecionada

logInMinutesinteger · int32Opcional

Tempo em minutos necessário para executar a atividade

Respostas
200

Sucesso

put
PUT /api/2/assignments/instance/{instanceid}/{code} HTTP/1.1
Host: seu_endereco.do.zeev
Authorization: YOUR_API_KEY
Content-Type: application/json
Accept: */*
Content-Length: 279

{
  "result": "text",
  "reason": "text",
  "logInMinutes": 1,
  "formFields": [
    {
      "id": 1,
      "name": "text",
      "value": "text",
      "row": 1
    }
  ],
  "messages": [
    {
      "messageBody": "text",
      "requesterCanSee": true
    }
  ],
  "files": [
    {
      "filename": "text",
      "resume": "text",
      "requesterCanSee": true,
      "docType": "text",
      "base64Content": "text"
    }
  ]
}
{
  "result": "text",
  "reason": "text",
  "logInMinutes": 1,
  "formFields": [
    {
      "id": 1,
      "name": "text",
      "value": "text",
      "row": 1
    }
  ],
  "messages": [
    {
      "messageBody": "text",
      "requesterCanSee": true
    }
  ],
  "files": [
    {
      "filename": "text",
      "resume": "text",
      "requesterCanSee": true,
      "docType": "text",
      "base64Content": "text"
    }
  ]
}

Exemplo de requisição para finalizar uma tarefa utilizando o alias do elemento

let instanceId=4321;
let taskCode='T10';

const myHeaders = new Headers();
myHeaders.append("Accept", "application/json");
myHeaders.append("Content-Type", "application/json");
myHeaders.append("Authorization", "Bearer TOKEN_DO_USUARIO");

const raw = JSON.stringify({
  "result": "Resolvido"
});

const requestOptions = {
  method: "PUT",
  headers: myHeaders,
  body: raw
};

try {
  const response = await fetch(`https://seu_endereco.do.zeev/api/2/assignments/instance/${instanceId}/${taskCode}`, requestOptions);
  const result = await response.json();
  console.log(result)
} catch (error) {
  console.error(error);
};

Como obter a lista de ações / botões disponíveis para finalizar uma atividade / tarefa, utilizando API?

Para finalizar uma atividade utilizando as API's é preciso informar o parâmetro result que indica a ação executada. Imagine que a atividade exige uma avaliação e você deve conclui-la com uma aprovação ou reprovação.

Este é o objetivo do atributo result. Para obter os valores disponíveis que podem ser utilizados no atributo result utilizando API, você deve seguir os passos abaixo:

  1. Autenticação: Primeiro obtenha um token de autenticação com permissão de realizar essa operação;

  2. Enviar a Requisição: Utilize o endpoint Finalizar uma tarefa pendente para enviar a requisição conforme modelo e exemplo (Troque seu_endereco.do.zeev pelo endereço que você usa para acessar o Zeev):

Listar as ações de conclusão possíveis de uma atribuição de atividade específica (Auth)

get
Autorizações
Parâmetros de rota
assignmentIdinteger · int32Obrigatório

Identificador da atribuição de atividade

Respostas
200

Sucesso

get
GET /api/2/assignments/{assignmentid}/actions HTTP/1.1
Host: seu_endereco.do.zeev
Authorization: YOUR_API_KEY
Accept: */*
{
  "label": "text",
  "result": "text",
  "validate": true,
  "reasonRequired": true,
  "textColor": "text",
  "bgColor": "text"
}

Atualizado