---
title: "Upravljanje zadacima | Tajo"
description: "Stvarajte zadatke, praćenja i aktivnosti u prodaji te upravljajte njima u Brevo CRM-u za Tajo"
url: https://tajo.io/hr/docs/sales-crm/tasks/
markdown: https://tajo.io/hr/docs/sales-crm/tasks.md
lang: hr-HR
author: "Set Noa"
author_url: https://tajo.io/hr/set-noa/
robots: noindex
---

Zatražite rani pristup

Unesite ime i poslovnu adresu e-pošte. Poslat ćemo vam poveznicu za potvrdu zahtjeva za pristup Taju.

# Upravljanje zadacima

[Set Noa](https://tajo.io/hr/set-noa/)

Brevo CRM Tasks API omogućuje vam da stvarate prodajne aktivnosti, praćenja i podsjetnike te upravljate njima kako bi vaš tim ostao organiziran unutar platforme Tajo.

## Pregled

Upravljanje zadacima ključno je za:

- **Prodajna praćenja** uz automatizirane podsjetnike i rokove
- **Koordinaciju tima** dodjeljivanjem aktivnosti pojedinim članovima tima
- **Napredovanje poslova** povezivanjem zadataka s poslovima i tvrtkama
- **Praćenje aktivnosti** nadzorom produktivnosti tima i stope dovršenosti
- **Angažman kupaca** planiranjem kontakata i provjera u sklopu programa vjernosti

## Brzi početak

### Stvaranje zadatka

```http
POST https://api.brevo.com/v3/crm/tasks
Content-Type: application/json
api-key: YOUR_API_KEY

{
  "name": "Follow up on Enterprise Loyalty proposal",
  "taskType": "call",
  "date": "2026-02-15T10:00:00Z",
  "duration": 1800,
  "notes": "Discuss volume discount tier and loyalty point allocation",
  "assignTo": "sarah.johnson@tajo.io",
  "companiesIds": ["comp_123456789"],
  "dealsIds": ["deal_abc123def456"],
  "contactsIds": [12345],
  "done": false,
  "reminder": {
    "value": 15,
    "unit": "minutes"
  }
}
```

### Odgovor

```json
{
  "id": "task_xyz789",
  "name": "Follow up on Enterprise Loyalty proposal",
  "taskType": "call",
  "date": "2026-02-15T10:00:00Z",
  "done": false,
  "created_at": "2026-01-25T14:30:00Z"
}
```

## Dohvaćanje zadataka

### Popis svih zadataka

```http
GET https://api.brevo.com/v3/crm/tasks?limit=50&offset=0&sort=desc
Content-Type: application/json
api-key: YOUR_API_KEY
```

### Odgovor

```json
{
  "items": [
    {
      "id": "task_xyz789",
      "name": "Follow up on Enterprise Loyalty proposal",
      "taskType": "call",
      "date": "2026-02-15T10:00:00Z",
      "duration": 1800,
      "assignTo": "sarah.johnson@tajo.io",
      "done": false,
      "companiesIds": ["comp_123456789"],
      "dealsIds": ["deal_abc123def456"],
      "created_at": "2026-01-25T14:30:00Z"
    }
  ],
  "total": 1
}
```

### Filtriranje zadataka

```http
GET https://api.brevo.com/v3/crm/tasks?filters[done]=false&filters[taskType]=call&sort=date:asc
```

### Dohvaćanje pojedinačnog zadatka

```http
GET https://api.brevo.com/v3/crm/tasks/{task_id}
Content-Type: application/json
api-key: YOUR_API_KEY
```

## Vrste zadataka

CRM podržava nekoliko vrsta zadataka za različite prodajne aktivnosti:

| Vrsta | Opis | Primjer uporabe |
| --- | --- | --- |
| `call` | Telefonski poziv | Pozivi za praćenje, demonstracije, provjere |
| `email` | Kontakt e-poštom | Ponude, obavijesti o novostima, newsletteri |
| `meeting` | Sastanak uživo ili virtualni | Demonstracije, pregovori, pregledi |
| `todo` | Opći zadatak | Interni rad, istraživanje, priprema |
| `deadline` | Vremenski osjetljiv zadatak | Obnove ugovora, ključne točke |

## Automatizirano stvaranje zadataka

### Automatizacija zadataka na temelju poslova

Stvarajte zadatke automatski kada poslovi napreduju kroz faze:

```javascript
class TaskAutomation {
  constructor() {
    this.tasksApi = new TasksApi();
  }

  async createDealFollowUp(deal, stageChange) {
    const taskTemplates = {
      'Lead': {
        name: `Qualify lead: ${deal.name}`,
        taskType: 'call',
        daysFromNow: 1,
        duration: 900
      },
      'Qualified': {
        name: `Schedule demo: ${deal.name}`,
        taskType: 'meeting',
        daysFromNow: 3,
        duration: 3600
      },
      'Demo': {
        name: `Send proposal: ${deal.name}`,
        taskType: 'email',
        daysFromNow: 1,
        duration: 1800
      },
      'Proposal': {
        name: `Follow up on proposal: ${deal.name}`,
        taskType: 'call',
        daysFromNow: 5,
        duration: 900
      },
      'Negotiation': {
        name: `Finalize contract: ${deal.name}`,
        taskType: 'deadline',
        daysFromNow: 7,
        duration: 3600
      },
      'Closed Won': {
        name: `Onboard customer: ${deal.name}`,
        taskType: 'meeting',
        daysFromNow: 2,
        duration: 3600
      }
    };

    const template = taskTemplates[stageChange.newStage];
    if (!template) return null;

    const taskDate = new Date();
    taskDate.setDate(taskDate.getDate() + template.daysFromNow);

    return await this.tasksApi.createTask({
      name: template.name,
      taskType: template.taskType,
      date: taskDate.toISOString(),
      duration: template.duration,
      assignTo: deal.attributes.deal_owner,
      dealsIds: [deal.id],
      companiesIds: deal.attributes.company_id ? [deal.attributes.company_id] : [],
      contactsIds: deal.attributes.contact_id ? [deal.attributes.contact_id] : [],
      done: false,
      reminder: { value: 30, unit: 'minutes' }
    });
  }

  async createLoyaltyCheckIn(company) {
    return await this.tasksApi.createTask({
      name: `Loyalty program check-in: ${company.name}`,
      taskType: 'call',
      date: new Date(Date.now() + 30 * 24 * 60 * 60 * 1000).toISOString(),
      duration: 1800,
      assignTo: company.attributes.account_manager,
      companiesIds: [company.id],
      notes: `Review tier status: ${company.attributes.loyalty_tier}\nAnnual spend: $${company.attributes.annual_spend}`,
      done: false,
      reminder: { value: 1, unit: 'days' }
    });
  }
}
```

### Skupne operacije nad zadacima

```javascript
class BulkTaskManager {
  async createRenewalTasks(daysBeforeExpiry = 90) {
    const renewalDate = new Date();
    renewalDate.setDate(renewalDate.getDate() + daysBeforeExpiry);

    const companies = await this.companiesApi.getCompanies({
      filters: {
        'attributes.renewal_date': `<${renewalDate.toISOString()}`
      }
    });

    const tasks = [];
    for (const company of companies.items) {
      const task = await this.tasksApi.createTask({
        name: `Contract renewal: ${company.name}`,
        taskType: 'deadline',
        date: company.attributes.renewal_date,
        assignTo: company.attributes.account_manager,
        companiesIds: [company.id],
        notes: `Contract value: $${company.attributes.contract_value}\nCurrent tier: ${company.attributes.loyalty_tier}`,
        done: false,
        reminder: { value: 7, unit: 'days' }
      });
      tasks.push(task);
    }

    return tasks;
  }
}
```

## Referenca API metoda

```javascript
// Create a new task
const task = await tasksApi.createTask({
  name: 'Follow up call',
  taskType: 'call',
  date: '2026-02-15T10:00:00Z',
  assignTo: 'sales@tajo.io',
  done: false
});

// Get task by ID
const task = await tasksApi.getTask('task_xyz789');

// Update task
await tasksApi.updateTask('task_xyz789', {
  done: true,
  notes: 'Customer agreed to upgrade tier'
});

// Delete task
await tasksApi.deleteTask('task_xyz789');

// List tasks with filtering
const tasks = await tasksApi.getTasks({
  filters: {
    done: false,
    taskType: 'call',
    assignTo: 'sarah@tajo.io'
  },
  sort: 'date:asc',
  limit: 50
});
```

## Najbolje prakse

1. **Automatizirajte stvaranje zadataka**: povežite zadatke s promjenama faze posla radi dosljednog praćenja
2. **Postavite podsjetnike**: uvijek konfigurirajte podsjetnike za vremenski osjetljive zadatke
3. **Povežite zapise**: povežite zadatke s poslovima, tvrtkama i kontaktima radi konteksta
4. **Pratite dovršenost**: nadzirite stope dovršenosti zadataka radi uvida u učinak tima
5. **Koristite vrste zadataka**: pravilno kategorizirajte zadatke radi točnog izvještavanja o aktivnostima

## Rukovanje pogreškama

```javascript
try {
  const task = await tasksApi.createTask(taskData);
  console.log('Task created:', task.id);
} catch (error) {
  if (error.status === 400) {
    console.error('Invalid task data:', error.message);
  } else if (error.status === 404) {
    console.error('Associated deal or contact not found');
  } else {
    console.error('Unexpected error:', error);
  }
}
```

## Sljedeći koraci

- **[Upravljanje tvrtkama](https://tajo.io/hr/docs/sales-crm/companies)** - upravljajte korporativnim računima
- **[Upravljanje poslovima](https://tajo.io/hr/docs/sales-crm/deals)** - pratite prodajni tijek
- **[Bilješke](https://tajo.io/hr/docs/sales-crm/notes)** - dokumentirajte interakcije s kupcima
- **[Datoteke](https://tajo.io/hr/docs/sales-crm/files)** - upravljajte privicima uz poslove
