Criar uma tarefa a partir do CRM
Nesta recipe
- Autentique com o token
- Crie a tarefa
- Monte o checklist
- Comente com o contexto
Acompanhar a execução de uma tarefa
Inicie, pause e finalize uma tarefa pela API para o Wiboor medir o tempo gasto, e consulte o resultado com GET /v1/tasks/{id}.
4 passos
Abrir recipe: Acompanhar a execução de uma tarefaCriar uma tarefa a partir de um template
Encontre o template com GET /v1/templates, pegue o rascunho com o prazo já calculado e crie a tarefa enviando o templateId.
3 passos
Abrir recipe: Criar uma tarefa a partir de um templateCriar uma tarefa a partir do CRM
Quando um lead muda de etapa, crie uma tarefa de follow-up com POST /v1/tasks, monte o checklist e deixe um comentário com o contexto.
4 passos
Abrir recipe: Criar uma tarefa a partir do CRMCriar um projeto com tarefas
Crie as tarefas com POST /v1/tasks, agrupe-as num projeto com POST /v1/projects e vincule depois as que surgirem.
3 passos
Abrir recipe: Criar um projeto com tarefasListar as tarefas abertas de um usuário
Percorra todas as páginas de GET /v1/tasks filtrando por executor e status, e monte um painel ou relatório com o resultado.
3 passos
Abrir recipe: Listar as tarefas abertas de um usuárioRegistrar e aprovar uma ideia
Registre sugestões vindas de outro sistema com POST /v1/ideas e aprove a ideia gerando uma tarefa com PATCH /v1/ideas/{id}/change-status.
3 passos
Abrir recipe: Registrar e aprovar uma ideia
Criar um projeto com tarefas
Crie as tarefas com POST /v1/tasks, agrupe-as num projeto com POST /v1/projects e vincule depois as que surgirem.
Pressione Enter para destacar o código deste passo1. Crie as tarefas primeiro
O projeto recebe uma lista de IDs de tarefas que já existem, então crie as tarefas antes, no mesmo espaço do projeto. Só tarefas
TASKentram em projeto: umBUGnão pode fazer parte de um projeto.2. Crie o projeto
A criação de projeto pede todos estes campos:
title,description,departmentId,userExecutorId(o líder),priority(1 a 10),endedAt(prazo),tasks,isReadyToCloseeopenReview. ComisReadyToClose: true, o projeto fecha sozinho quando todas as tarefas forem finalizadas. SeopenReviewfortrue, o projeto gera uma avaliação ao terminar euserReviewerId(o avaliador) passa a ser obrigatório.3. Vincule tarefas depois
Tarefas que aparecem no meio do caminho entram com Vincular uma tarefa a um projeto. Outra opção é criar a tarefa já com o
projectIdnoPOST /v1/tasks.
const BASE_URL = 'https://api.azzimuti.com.br/v1';
const headers = {
Authorization: `Bearer ${process.env.WIBOOR_TOKEN}`,
'Content-Type': 'application/json',
};
const departmentId = '0197a1c2-3d4e-7f50-8a61-b2c3d4e5f607';
const leaderId = '0197a1c2-9b8a-7c6d-8e5f-40312a1b2c3d';
// 1. Crie as tarefas primeiro
const titles = ['Briefing com o cliente', 'Criação das peças', 'Revisão e entrega'];
const taskIds = [];
for (const title of titles) {
const res = await fetch(`${BASE_URL}/tasks`, {
method: 'POST',
headers,
body: JSON.stringify({ title, type: 'TASK', departmentId, userExecutorId: leaderId }),
});
taskIds.push((await res.json()).id);
}
// 2. Crie o projeto com os IDs das tarefas
const projectRes = await fetch(`${BASE_URL}/projects`, {
method: 'POST',
headers,
body: JSON.stringify({
title: 'Campanha de Natal — ACME',
description: 'Peças da campanha de fim de ano.',
departmentId,
userExecutorId: leaderId,
priority: 5,
endedAt: '2026-12-15T21:00:00.000Z',
tasks: taskIds,
isReadyToClose: true,
openReview: false,
userReviewerId: null,
}),
});
const project = await projectRes.json();
// 3. Vincule uma tarefa que surgiu depois
const extraTaskId = '0197b4a1-2c3d-7e4f-9a5b-6c7d8e9f0a1b';
await fetch(`${BASE_URL}/projects/${project.id}/attach/tasks/${extraTaskId}`, { method: 'POST', headers });Resposta
{
"id": "0197b4a0-7d6c-7b5a-8f4e-3d2c1b0a9f8e",
"projectNumber": 1612,
"title": "Campanha de Natal — ACME",
"status": "NOT_STARTED",
"priority": 5,
"endedAt": "2026-12-15T21:00:00.000Z",
"isReadyToClose": true,
"departmentId": "0197a1c2-3d4e-7f50-8a61-b2c3d4e5f607",
"userExecutorId": "0197a1c2-9b8a-7c6d-8e5f-40312a1b2c3d",
"tasks": [
"0197b49f-0a1b-7c2d-8e3f-4a5b6c7d8e9f",
"0197b49f-1b2c-7d3e-9f4a-5b6c7d8e9f0a",
"0197b49f-2c3d-7e4f-8a5b-6c7d8e9f0a1b"
]
}