Tarefas
13 min
Autenticação
Todas as requisições devem incluir o token do WhatsApp no header:
Authorization: Bearer SEU_TOKEN_WHATSAPP
Endpoints Disponíveis
1. Listar Tarefas
GET /api/tasks/list
Lista todas as tarefas da empresa.
Query Parameters (opcionais):
- userId - Filtrar tarefas de um usuário específico
- priority - Filtrar por prioridade: high, medium, low
- status - Filtrar por status: pending, completed
Exemplo:
curl -X GET "https://seu-dominio.com/api/tasks/list?status=pending&priority=high" \
-H "Authorization: Bearer SEU_TOKEN"Resposta:
[
{
"id": 1,
"title": "Tarefa exemplo",
"description": "Descrição da tarefa",
"priority": "high",
"status": "pending",
"dueDate": "2024-12-31T00:00:00.000Z",
"companyId": 1,
"createdBy": 5,
"assignedTo": 10,
"creator": {
"id": 5,
"name": "João Silva",
"email": "[email protected]"
},
"assignee": {
"id": 10,
"name": "Maria Santos",
"email": "[email protected]"
},
"createdAt": "2024-11-20T10:00:00.000Z",
"updatedAt": "2024-11-21T15:30:00.000Z"
}
]
2. Obter Status de Tarefa
GET /api/tasks/:id/status
Retorna informações e status de uma tarefa específica.
Parâmetros:
- id - ID da tarefa (na URL)
Exemplo:
curl -X GET "https://seu-dominio.com/api/tasks/15/status" \
-H "Authorization: Bearer SEU_TOKEN"Resposta:
{
"id": 15,
"title": "Tarefa exemplo",
"status": "pending",
"priority": "high",
"dueDate": "2024-12-31T00:00:00.000Z",
"createdBy": 5,
"assignedTo": 10,
"creator": {
"id": 5,
"name": "João Silva",
"email": "[email protected]"
},
"assignee": {
"id": 10,
"name": "Maria Santos",
"email": "[email protected]"
},
"createdAt": "2024-11-20T10:00:00.000Z",
"updatedAt": "2024-11-21T15:30:00.000Z"
}
3. Criar Tarefa
POST /api/tasks/create
Cria uma nova tarefa.
Body (JSON):
- title (obrigatório) - Título da tarefa
- createdBy (obrigatório) - ID do usuário criador
- description (opcional) - Descrição da tarefa
- priority (opcional) - Prioridade: high, medium, low (padrão: medium)
- dueDate (opcional) - Data de vencimento (ISO 8601)
- assignedTo (opcional) - ID do usuário responsável
Exemplo:
curl -X POST "https://seu-dominio.com/api/tasks/create" \
-H "Authorization: Bearer SEU_TOKEN" \
-H "Content-Type: application/json" \
-d '{
"title": "Nova tarefa via API",
"description": "Descrição da tarefa",
"priority": "high",
"createdBy": 5,
"assignedTo": 10,
"dueDate": "2024-12-31T23:59:59.000Z"
}'Resposta (201):
{
"id": 20,
"title": "Nova tarefa via API",
"description": "Descrição da tarefa",
"priority": "high",
"status": "pending",
"dueDate": "2024-12-31T23:59:59.000Z",
"companyId": 1,
"createdBy": 5,
"assignedTo": 10,
"sharedWith": [],
"creator": {
"id": 5,
"name": "João Silva",
"email": "[email protected]"
},
"assignee": {
"id": 10,
"name": "Maria Santos",
"email": "[email protected]"
},
"createdAt": "2024-11-22T10:00:00.000Z",
"updatedAt": "2024-11-22T10:00:00.000Z"
}
4. Finalizar Tarefa
POST /api/tasks/:id/complete
Marca uma tarefa como concluída (status = completed).
Parâmetros:
- id - ID da tarefa (na URL)
Exemplo:
curl -X POST "https://seu-dominio.com/api/tasks/15/complete" \
-H "Authorization: Bearer SEU_TOKEN"Resposta:
{
"id": 15,
"title": "Tarefa exemplo",
"status": "completed",
"priority": "high",
"companyId": 1,
"createdBy": 5,
"assignedTo": 10,
"creator": {
"id": 5,
"name": "João Silva",
"email": "[email protected]"
},
"assignee": {
"id": 10,
"name": "Maria Santos",
"email": "[email protected]"
},
"updatedAt": "2024-11-22T14:30:00.000Z"
}
Códigos de Resposta
Código | Significado |
|---|---|
200 | Sucesso |
201 | Criado com sucesso |
400 | Requisição inválida (parâmetros faltando) |
401 | Token inválido ou não autorizado |
404 | Recurso não encontrado |
500 | Erro no servidor |
Notas Importantes
- Token: Use o token da tabela Whatsapps (mesmo token usado nas APIs de mensagens)
- Escopo: As operações são limitadas à empresa do token
- IDs de Usuários: Devem pertencer à mesma empresa
- Formato de Data: Use ISO 8601 (YYYY-MM-DDTHH:mm:ss.sssZ)