先行利用を申し込む

お名前とメールアドレスまたは電話番号をご入力ください。Tajo のアクセス方法をご案内します。

タスク管理

Brevo CRM の Tasks API を使うと、営業活動、フォローアップ、リマインダーを作成して管理し、Tajo プラットフォーム上でチームの動きを整理できます。

概要

タスク管理は、次の場面で欠かせません。

  • 営業フォローアップ: リマインダーと期限を自動で設定します
  • チームの連携: 活動を特定のメンバーに割り当てます
  • 商談の進行: タスクを商談や企業にひも付けます
  • 活動の追跡: チームの生産性と完了率を把握します
  • 顧客エンゲージメント: ロイヤルティプログラムの案内やフォローの予定を組みます

クイックスタート

タスクの作成

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": "[email protected]",
"companiesIds": ["comp_123456789"],
"dealsIds": ["deal_abc123def456"],
"contactsIds": [12345],
"done": false,
"reminder": {
"value": 15,
"unit": "minutes"
}
}

レスポンス

{
"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"
}

タスクの取得

すべてのタスクを一覧表示する

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

レスポンス

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

タスクを絞り込む

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

単一のタスクを取得する

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

タスクの種類

CRM は、営業活動に応じた複数のタスク種別に対応しています。

種類説明ユースケース
call電話フォローアップの架電、デモ、状況確認
emailメールでのアプローチ提案、進捗連絡、ニュースレター
meeting対面またはオンラインの打ち合わせデモ、交渉、レビュー
todo一般的なタスク社内作業、調査、準備
deadline期限が決まっているタスク契約更新、マイルストーン

タスクの自動作成

商談に連動したタスクの自動化

商談がステージを進むたびに、タスクを自動で作成します。

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' }
});
}
}

タスクの一括操作

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;
}
}

API メソッドリファレンス

// Create a new task
const task = await tasksApi.createTask({
name: 'Follow up call',
taskType: 'call',
date: '2026-02-15T10:00:00Z',
assignTo: '[email protected]',
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: '[email protected]'
},
sort: 'date:asc',
limit: 50
});

ベストプラクティス

  1. タスク作成を自動化する: タスクを商談のステージ変更にひも付け、フォローアップを一定に保ちます
  2. リマインダーを設定する: 期限が決まっているタスクには必ずリマインダーを設定します
  3. レコードをひも付ける: タスクを商談、企業、コンタクトに関連付けて文脈を残します
  4. 完了状況を追跡する: タスクの完了率を確認し、チームのパフォーマンスを把握します
  5. タスク種別を使い分ける: 適切に分類して、活動レポートの精度を高めます

エラー処理

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);
}
}

次のステップ

先行利用を申し込む

お名前とメールアドレスまたは電話番号をご入力ください。Tajo のアクセス方法をご案内します。

自動判定
AIアシスタント

こんにちは!ドキュメントについて何でもお聞きください。