Bắt đầu với Coka AI MCP Server
COKA AI MCP Server giúp bạn quản lý Lead, Deal, Khách hàng, Lịch hẹn... bằng ngôn ngữ tự nhiên thông qua các ứng dụng AI.
Bạn chỉ cần 2 bước để bắt đầu:
- ✅ Lấy Token xác thực từ Coka AI
- ✅ Dán cấu hình vào ứng dụng AI của bạn
Sau đó bạn có thể giao tiếp với AI để quản lý Lead, Deal, đặt lịch hẹn, tạo đơn hàng và nhiều hơn nữa.
Lấy Token Xác Thực
Token là "chìa khóa" để AI truy cập dữ liệu Coka của bạn một cách an toàn.
Truy cập Coka AI
Mở trình duyệt, truy cập web.coka.ai và đăng nhập bằng tài khoản của bạn.
Vào trang Cài đặt → Thông tin tài khoản
Trên thanh menu bên trái, chọn Cài đặt → chọn tab Cá nhân.
Tìm mục "Kết nối MCP"
Cuộn xuống cuối trang, bạn sẽ thấy mục 🔗 Kết nối MCP với nút Tạo Key MCP màu tím.
Tạo Key MCP
Nhấn nút "Tạo Key MCP" → hệ thống tạo token → Copy toàn bộ chuỗi token.
Cấu Hình Kết Nối
Chọn ứng dụng AI bạn đang sử dụng:
Claude Desktop
Mở file cấu hình:
macOS:
~/Library/Application
Support/Claude/claude_desktop_config.json
Windows:
%APPDATA%\Claude\claude_desktop_config.json
✅ Cách 1 — npx mcp-remote (Khuyến nghị):
{
"mcpServers": {
"coka_ai": {
"command": "npx",
"args": [
"-y", "mcp-remote",
"https://mcp.coka.ai/mcp/",
"--header",
"CokaToken:Bearer coka_token"
]
}
}
}
CokaToken:Bearer, viết
liền không có khoảng trắng sau
dấu :
Cách 2 — Phiên bản mới (hỗ trợ url + headers):
{
"mcpServers": {
"coka_ai": {
"url": "https://mcp.coka.ai/sse",
"headers": {
"CokaToken": "Bearer coka_token"
}
}
}
}
Cursor
Mở Settings ⚙️ → MCP Servers → Add new MCP Server
{
"mcpServers": {
"coka-api": {
"url": "https://mcp.coka.ai/sse",
"headers": {
"CokaToken": "Bearer coka_token"
}
}
}
}
Antigravity (Google Gemini)
Tạo hoặc mở file .gemini/settings.json trong thư mục dự án
{
"mcpServers": {
"coka_server": {
"url": "https://mcp.coka.ai/sse",
"headers": {
"CokaToken": "Bearer coka_token"
}
}
}
}
Windsurf / Cline / Roo Code
{
"mcpServers": {
"coka-api": {
"url": "https://mcp.coka.ai/sse",
"headers": {
"CokaToken": "Bearer coka_token"
}
}
}
}
VS Code (GitHub Copilot)
Tạo file .vscode/mcp.json trong thư mục dự án
{
"servers": {
"coka-api": {
"type": "sse",
"url": "https://mcp.coka.ai/sse",
"headers": {
"CokaToken": "Bearer coka_token"
}
}
}
}
"servers" thay vì
"mcpServers"
N8N (Automation)
Mở N8N workflow
Thêm node MCP Client
Điền thông tin kết nối
-
SSE URL:
https://mcp.coka.ai/sse -
Header Key:
CokaToken -
Header Value:
Bearer coka_token
Manus
Manus sử dụng Streamable HTTP (protocol mới nhất).
{
"mcpServers": {
"coka": {
"type": "streamableHttp",
"url": "https://mcp.coka.ai/mcp/",
"headers": {
"CokaToken": "coka_token"
}
}
}
}
streamableHttp. Token
KHÔNG cần prefix
Bearer.
Bắt Đầu Sử Dụng
Sau khi kết nối thành công, nói chuyện với AI bằng ngôn ngữ tự nhiên:
📊 Quản lý Lead
| Bạn muốn... | Nói với AI |
|---|---|
| Xem danh sách Lead | "Cho tôi xem danh sách Lead" |
| Tạo Lead mới | "Tạo Lead mới tên Nguyễn Văn A, SĐT 0901234567" |
| Gán người phụ trách | "Gán Lead này cho anh Minh" |
💼 Quản lý Deal
| Bạn muốn... | Nói với AI |
|---|---|
| Tạo Deal mới | "Tạo deal mới cho khách hàng ABC" |
| Chuyển Lead → Deal | "Chuyển Lead Nguyễn Văn A sang Deal" |
| Chuyển giai đoạn | "Chuyển Deal ABC sang giai đoạn Đàm phán" |
📅 Lịch hẹn & Đơn hàng
| Bạn muốn... | Nói với AI |
|---|---|
| Đặt lịch hẹn | "Tạo lịch họp với KH vào 2h chiều mai" |
| Xem sản phẩm | "Cho tôi xem danh sách sản phẩm" |
Câu Hỏi Thường Gặp
Xử Lý Lỗi Thường Gặp
| Lỗi | Nguyên nhân | Cách xử lý |
|---|---|---|
| Token không hợp lệ | Token hết hạn / sai format | Lấy token mới từ web.coka.ai |
| Failed to connect | Server bảo trì / mạng lỗi | Thử lại sau vài phút |
| Session not found | Phiên kết nối hết hạn | Khởi động lại ứng dụng AI |
Tài Liệu API Kỹ Thuật
Coka AI MCP Server — Version 3.8.0 · Tổng số 44 Tools
🌐 Base URLs
| Tên | URL | Mô tả |
|---|---|---|
BASE_URL |
https://api.alpha.coka.ai
|
API chính |
CALENDAR_URL |
https://calendar.coka.ai
|
Calendar API |
NOTE_URL |
https://api.app2.coka.ai
|
Note/Journey API |
PRODUCTS_URL |
https://api.products.coka.ai
|
Products/Deal/Order API |
Xác thực
Tất cả API đều yêu cầu header xác thực:
Authorization: Bearer <COKA_TOKEN> Organizationid: <organization_id>
Tổ chức
Quản lý thông tin tổ chức, thành viên và phân loại nhãn. Đây là nhóm API nền tảng cần gọi trước khi thao tác với Lead hoặc Deal.
BASE_URL — api.alpha.coka.ai · Modules:
User, Organization,
Category
Lấy thông tin cá nhân
Trả về họ tên, email, số điện thoại, avatar và profileId của người dùng đang đăng nhập.
{BASE_URL}/api/v1/user/profile/getdetail
Danh sách tổ chức
Lấy tất cả tổ chức mà người dùng là thành viên. Trả về organizationId cần thiết cho mọi API khác.
{BASE_URL}/api/v2/organization/getlistpaging
Danh sách thành viên
Liệt kê tất cả thành viên trong tổ chức. Dùng để lấy profileId khi gán người phụ trách Lead/Deal.
{BASE_URL}/api/v1/organization/member/getlistpaging
Danh sách nhãn
Lấy danh sách nhãn phân loại (tags) của tổ chức. Dùng khi gắn nhãn cho Lead.
{BASE_URL}/api/v2/category/tags/getlistpaging
Quản lý Lead
Lead là khách hàng tiềm năng. Nhóm API này cho phép tạo, xem, cập nhật, gán người phụ trách, gắn nhãn và theo dõi Lead trong hệ thống CRM.
BASE_URL — api.alpha.coka.ai · Module:
Lead v2
Danh sách Lead
Lọc và phân trang danh sách Lead theo thời gian, nguồn, người phụ trách. Hỗ trợ tìm kiếm nâng cao.
{BASE_URL}/api/v2/lead/getlistpagingv2
Chi tiết Lead
Xem toàn bộ thông tin của một Lead: liên hệ, lịch sử chăm sóc, hoạt động, hội thoại đã liên kết.
{BASE_URL}/api/v2/lead/{leadId}
Gán người phụ trách Lead
Chỉ định một thành viên trong tổ chức làm người phụ trách chính cho Lead.
{BASE_URL}/api/v2/lead/{leadId}/assignto
Đổi người theo dõi Lead
Thêm hoặc thay đổi danh sách người theo dõi (follower) của Lead. Hỗ trợ gán theo user hoặc đội sale.
{BASE_URL}/api/v2/lead/{leadId}/follow
Gán nhãn cho Lead
Gắn nhãn phân loại cho Lead (ví dụ: "mua bán", "chuyển nhượng"). Hỗ trợ chế độ thêm hoặc thay thế.
{BASE_URL}/api/v2/lead/{leadId}/tags
Cập nhật thông tin Lead
Sửa một trường dữ liệu cụ thể (phone, email, gender...) mà không cần gửi toàn bộ payload.
{BASE_URL}/api/v2/lead/{leadId}/update-field
Tạo Lead mới
Tạo khách hàng tiềm năng mới với thông tin liên hệ, nguồn, nhãn và người phụ trách.
{BASE_URL}/api/v2/lead/create
Lịch hẹn
Quản lý lịch hẹn, cuộc họp và hoạt động chăm sóc khách hàng trên Calendar. Hỗ trợ tạo, sửa, đánh dấu hoàn thành cho cả Lead và Deal.
CALENDAR_URL — calendar.coka.ai ·
Module: Schedule
Danh sách lịch hẹn
Lấy tất cả hoạt động (cuộc họp, cuộc gọi, tài liệu) đã đặt cho một Lead hoặc Deal.
{CALENDAR_URL}/api/Schedule
Tạo lịch hẹn
Tạo hoạt động mới trên Calendar: cuộc họp, cuộc gọi, hoặc gửi tài liệu cho khách hàng.
{CALENDAR_URL}/api/Schedule
Sửa lịch hẹn
Cập nhật tiêu đề, thời gian, nội dung hoặc mức ưu tiên của hoạt động đã tạo.
{CALENDAR_URL}/api/Schedule
Đánh dấu hoàn thành
Đánh dấu hoạt động là đã hoàn thành hoặc bỏ đánh dấu nếu chưa xong.
{CALENDAR_URL}/api/Schedule/mark-as-done
Ghi chú
Thêm, sửa, xóa ghi chú chăm sóc trong lịch sử (journey) của Lead. Mỗi ghi chú gắn liền với một Lead cụ thể qua leadId.
NOTE_URL — api.app2.coka.ai · Module:
Lead Journey
Tạo ghi chú Lead
Thêm ghi chú chăm sóc mới vào lịch sử (journey) của Lead để theo dõi tiến trình.
{NOTE_URL}/api/v2/lead/{leadId}/journey/note
Sửa ghi chú Lead
Chỉnh sửa nội dung ghi chú đã tạo trước đó. Cần truyền noteId cụ thể.
{NOTE_URL}/api/v2/lead/{leadId}/journey/{noteId}/note
Xóa ghi chú Lead
Xóa vĩnh viễn một ghi chú khỏi lịch sử chăm sóc. Hành động không thể hoàn tác.
{NOTE_URL}/api/v2/lead/{leadId}/journey/{noteId}/note
Quản lý Deal
Deal là cơ hội kinh doanh trong quy trình bán hàng. Hỗ trợ tạo Deal từ Lead hoặc trực tiếp, quản lý trạng thái, giai đoạn, nhãn, người phụ trách và ghi chú Deal.
PRODUCTS_URL — api.products.coka.ai ·
Modules: BusinessProcessTask,
BusinessProcessTag,
TaskTag · Lịch hẹn Deal dùng
CALENDAR_URL
Chuyển Lead thành Deal
Chuyển đổi Lead đã có thành Deal trong quy trình bán hàng. Cần chọn Workspace và giai đoạn (stage) trước khi chuyển.
{PRODUCTS_URL}/api/v1/businessprocesstask
Tạo Deal mới
Tạo Deal trực tiếp không cần Lead. Tự động tạo Order và liên kết trong 1 lần gọi. Cần chọn khách hàng, workspace.
{PRODUCTS_URL}/api/v1/businessprocesstask
Danh sách Deal
Lấy danh sách Deal theo giai đoạn (stage) trong Workspace. Tương đương hiển thị bảng Kanban trên giao diện web.
{PRODUCTS_URL}/api/v1/BusinessProcessTask/advanced
Chi tiết Deal
Xem toàn bộ thông tin Deal: khách hàng, người phụ trách, giai đoạn, đơn hàng, lịch sử di chuyển stage.
{PRODUCTS_URL}/api/v1/BusinessProcessTask/{taskId}
Chuyển giai đoạn Deal
Di chuyển Deal sang giai đoạn khác trong quy trình. Tương đương kéo thả thẻ trên bảng Kanban.
{PRODUCTS_URL}/api/v1/BusinessProcessTask/{taskId}/move
Nhân bản Deal
Sao chép Deal thành bản mới với hậu tố "(Bản sao)". Giữ nguyên thông tin gốc.
{PRODUCTS_URL}/api/v1/BusinessProcessTask/{taskId}/duplicate
Xóa Deal
Xóa vĩnh viễn một Deal khỏi hệ thống. AI luôn yêu cầu xác nhận trước khi thực hiện.
{PRODUCTS_URL}/api/v1/BusinessProcessTask/{taskId}
Cập nhật trạng thái Deal
Đánh dấu Deal là "Thành công" hoặc "Thất bại". Có thể kèm ghi chú giải thích lý do.
{PRODUCTS_URL}/api/v1/BusinessProcessTask/{taskId}/status
Tạo lịch hẹn cho Deal
Tạo hoạt động (cuộc họp, gọi điện) gắn liền với Deal. Dùng Calendar API với workspaceId + taskId.
{CALENDAR_URL}/api/Schedule
Tạo ghi chú Deal
Thêm ghi chú chăm sóc vào lịch sử (journey) của Deal để theo dõi tiến trình kinh doanh.
{PRODUCTS_URL}/api/v1/BusinessProcessTask/{taskId}/journeys
Danh sách nhãn Deal
Lấy các nhãn màu sắc có sẵn trong Workspace. Dùng khi gắn nhãn quy trình cho Deal.
{PRODUCTS_URL}/api/v1/BusinessProcessTag
Gán nhãn cho Deal
Gắn nhãn quy trình cho Deal. Lưu ý: thao tác này thay thế toàn bộ nhãn hiện tại.
{PRODUCTS_URL}/api/v1/TaskTag/{taskId}/tags
Đổi người theo dõi Deal
Thay đổi danh sách người theo dõi hoặc người phụ trách Deal. Hỗ trợ gán theo user hoặc đội nhóm.
{PRODUCTS_URL}/api/v1/BusinessProcessTask/{taskId}/assignee
Đơn hàng
Tạo đơn hàng (Order) với sản phẩm, liên kết đơn hàng vào Deal, và đánh dấu hoàn thành bước chăm sóc Lead sau khi chuyển đổi thành công.
PRODUCTS_URL — api.products.coka.ai ·
Module: Order,
BusinessProcessTask · Bước chăm sóc
dùng BASE_URL
Tạo đơn hàng
Tạo đơn hàng mới với danh sách sản phẩm, số lượng và giá. Cần gọi sau khi tạo Deal thành công.
{PRODUCTS_URL}/api/v1/order
Liên kết đơn hàng với Deal
Gắn đơn hàng đã tạo vào Deal tương ứng. Gọi ngay sau khi tạo Order thành công.
{PRODUCTS_URL}/api/v1/businessprocesstask/{taskId}/link-order
Hoàn thành bước chăm sóc
Đánh dấu hoàn thành bước chăm sóc hiện tại của Lead trong flow. Thường gọi sau khi chuyển Lead thành Deal thành công.
{BASE_URL}/api/v2/lead/{leadId}/flow/step/update
Tổng Kết API Endpoints
| # | Chức năng | Method | Endpoint | Host |
|---|---|---|---|---|
| 1 | Lấy thông tin cá nhân | GET |
/api/v1/user/profile/getdetail
|
BASE_URL |
| 2 | Danh sách tổ chức | GET |
/api/v2/organization/getlistpaging
|
BASE_URL |
| 3 | Danh sách Lead | POST |
/api/v2/lead/getlistpagingv2
|
BASE_URL |
| 4 | Tạo Lead mới | POST | /api/v2/lead/create |
BASE_URL |
| 5 | Chuyển Lead thành Deal | POST |
/api/v1/businessprocesstask
|
PRODUCTS_URL |
| 6 | Danh sách Deal | POST |
/api/v1/BusinessProcessTask/advanced
|
PRODUCTS_URL |
| 7 | Tạo đơn hàng | POST | /api/v1/order |
PRODUCTS_URL |
Luồng Xử Lý Chức Năng
Mỗi tính năng được thực hiện bằng chuỗi API calls theo thứ tự. Click vào từng thẻ để xem chi tiết.
Tạo khách hàng tiềm năng mới. Gọi lần lượt các API để lấy dữ liệu phụ trợ (nguồn, nhãn, thành viên), sau đó POST tạo Lead.
/api/v2/organization/getlistpaging
→ Lấy organizationId
Response mẫu
{ "data": [{ "id": "org_abc123", "name": "Công ty ABC", "subscription": "BUSINESS" }] }
/api/v2/category/sources/getlistpaging
→ Lấy danh sách nguồn Lead
Response mẫu
{ "data": [{ "id": "src_001", "name": "Facebook" }, { "id": "src_002", "name": "Website" }] }
/api/v2/category/tags/getlistpaging
→ Lấy danh sách nhãn
Response mẫu
{ "data": [{ "id": "tag_01", "name": "Mua bán" }, { "id": "tag_02", "name": "Chuyển nhượng" }] }
/api/v1/organization/member/getlistpaging
→ Lấy danh sách thành viên (chọn assignee)
Response mẫu
{ "data": [{ "profileId": "prof_01", "fullName": "Nguyễn Văn A", "role": "ADMIN" }] }
/api/v2/lead/create
→
Tạo Lead
Body: fullName, phone, email, sourceId, tags, assignees
Response mẫu
{ "id": "lead_xyz789", "fullName": "Trần Thị B", "phone": "0901234567", "status": "NEW" }
Chuyển đổi Lead có sẵn thành Deal. Phải lấy workspace + giai đoạn trước, sau đó POST tạo Deal. Tùy chọn thêm sản phẩm vào đơn hàng.
{PRODUCTS_URL}/api/v1/workspace
→ Lấy danh sách Workspace → chọn workspaceId
Response mẫu
{ "data": [{ "id": "ws_001", "name": "Kinh doanh BĐS" }, { "id": "ws_002", "name": "Bán hàng Online" }] }
{PRODUCTS_URL}/api/v1/businessprocessstage
→ Lấy giai đoạn quy trình → chọn stageId
Response mẫu
{ "data": [{ "id": "stg_01", "name": "Tiếp nhận" }, { "id": "stg_02", "name": "Đang xử lý" }, { "id": "stg_03", "name": "Chốt deal" }] }
{PRODUCTS_URL}/api/v1/businessprocesstask
→
Tạo Deal từ Lead
Body: leadId, workspaceId, stageId, name, assignedTo
Response mẫu
{ "id": "task_abc123", "name": "Deal - Trần Thị B", "stageId": "stg_01", "status": 1 }
{PRODUCTS_URL}/api/v1/product
→ Lấy danh sách sản phẩm
Response mẫu
{ "data": [{ "id": "prod_01", "name": "Căn hộ 2PN", "price": 2500000000 }, { "id": "prod_02", "name": "Căn hộ 3PN", "price": 3500000000 }] }
{PRODUCTS_URL}/api/v1/order
→ Tạo đơn hàng
Body: orderDetails[], totalPrice
Response mẫu
{ "id": "order_001", "totalPrice": 2500000000, "orderDetails": [{ "productId": "prod_01", "quantity": 1 }] }
{PRODUCTS_URL}/api/v1/businessprocesstask/{taskId}/link-order
→ Liên kết đơn hàng với Deal
Response mẫu
{ "success": true, "message": "Order linked successfully" }
Tạo Deal mới hoàn toàn từ khách hàng. Server tự động chạy 3 API liên tục: tạo Deal → tạo Order → link Order vào Deal.
{BASE_URL}/api/v2/customer/getlistpaging
→ Tìm khách hàng
Không thấy? → POST tạo khách hàng mới
Response mẫu
{ "data": [{ "id": "cust_01", "fullName": "Lê Văn C", "phone": "0912345678", "isBusiness": false }] }
{PRODUCTS_URL}/api/v1/workspace
→ Chọn Workspace
Response mẫu
{ "data": [{ "id": "ws_001", "name": "Kinh doanh BĐS" }] }
{PRODUCTS_URL}/api/v1/businessprocessstage
→ Chọn giai đoạn
Response mẫu
{ "data": [{ "id": "stg_01", "name": "Tiếp nhận" }, { "id": "stg_02", "name": "Đang xử lý" }] }
{BASE_URL}/api/v1/organization/member/getlistpaging
→ Chọn người phụ trách
Response mẫu
{ "data": [{ "profileId": "prof_01", "fullName": "Nguyễn Văn A" }] }
{PRODUCTS_URL}/api/v1/BusinessProcessTag
→ Lấy nhãn Deal
Response mẫu
{ "data": [{ "id": "dtag_01", "name": "Ưu tiên", "color": "#FF5733" }] }
{PRODUCTS_URL}/api/v1/product
→ Chọn sản phẩm + số lượng
Response mẫu
{ "data": [{ "id": "prod_01", "name": "Căn hộ 2PN", "price": 2500000000 }] }
{PRODUCTS_URL}/api/v1/businessprocesstask
→
Tạo Deal + Order + Link
Body: customerId, workspaceId, stageId, orderDetails[], totalPrice
Response mẫu
{ "dealId": "task_def456", "orderId": "order_002", "name": "Deal - Lê Văn C", "status": 1 }
Hiển thị Deal theo giai đoạn giống bảng Kanban. Phải gọi 3 API lần lượt: workspace → stage → deals.
{PRODUCTS_URL}/api/v1/workspace
→ Lấy danh sách Workspace
Response mẫu
{ "data": [{ "id": "ws_001", "name": "Kinh doanh BĐS" }] }
{PRODUCTS_URL}/api/v1/businessprocessstage
→ Lấy giai đoạn → chọn stageId
Response mẫu
{ "data": [{ "id": "stg_01", "name": "Tiếp nhận" }, { "id": "stg_02", "name": "Đang xử lý" }] }
{PRODUCTS_URL}/api/v1/BusinessProcessTask/advanced
→
Lấy danh sách Deal
Body: workspaceId, stageId, statusList, page, pageSize
Response mẫu
{ "data": [{ "id": "task_001", "name": "Deal A", "status": 1 }, { "id": "task_002", "name": "Deal B", "status": 1 }], "totalCount": 2 }
Các API quản lý Lead hàng ngày. Mỗi endpoint có thể gọi độc lập tùy nhu cầu.
/api/v2/lead/getlistpagingv2
→ Lọc danh sách Lead
Body: startDate, endDate, assignees, channels
Response mẫu
{ "data": [{ "id": "lead_01", "fullName": "Nguyễn A", "phone": "090xxx", "status": "NEW" }], "totalCount": 15 }
/api/v2/lead/{leadId}
→ Chi tiết Lead (gọi 3 API song song)
Response mẫu
{ "id": "lead_01", "fullName": "Nguyễn A", "phone": "090xxx", "email": "a@mail.com", "gender": 0, "tags": ["Mua bán"] }
/api/v2/lead/{leadId}/journey
→ Lịch sử chăm sóc (events, jsonSummary)
Response mẫu
{ "data": [{ "type": "NOTE", "content": "Đã gọi điện", "createdAt": "2026-03-15T10:00:00Z" }] }
/api/v2/lead/{leadId}/update-field
→ Sửa 1 trường
Body: fieldName, value
Response mẫu
{ "success": true, "fieldName": "phone", "value": "0987654321" }
/api/v2/lead/{leadId}/assignto
→ Gán người phụ trách
Response mẫu
{ "success": true, "assignedTo": { "profileId": "prof_01", "fullName": "Nguyễn Văn A" } }
/api/v2/lead/{leadId}/follow
→ Đổi người theo dõi
Response mẫu
{ "success": true, "followers": [{ "profileId": "prof_02", "fullName": "Trần B" }] }
/api/v2/lead/{leadId}/tags
→ Gắn nhãn
mode: "add" hoặc "replace"
Response mẫu
{ "success": true, "tags": ["Mua bán", "VIP"] }
Các API thao tác trên Deal. Mỗi endpoint gọi độc lập. Host: PRODUCTS_URL trừ lịch hẹn dùng CALENDAR_URL.
/api/v1/BusinessProcessTask/{taskId}
→ Chi tiết Deal + stageHistory
Response mẫu
{ "id": "task_001", "name": "Deal A", "stageId": "stg_01", "status": 1, "stageHistory": [{ "stageId": "stg_01", "movedAt": "2026-03-10" }] }
/api/v1/BusinessProcessTask/{taskId}/move
→ Chuyển giai đoạn
Body: newStageId
Response mẫu
{ "success": true, "newStageId": "stg_02", "newStageName": "Đang xử lý" }
/api/v1/BusinessProcessTask/{taskId}/status
→ Đánh dấu Thành công / Thất bại
Body: isSuccess, note
Response mẫu
{ "success": true, "status": 2, "note": "Khách đã ký hợp đồng" }
/api/v1/BusinessProcessTask/{taskId}
→ Đổi tên Deal
Body: name
Response mẫu
{ "success": true, "name": "Deal A - Cập nhật" }
/api/v1/BusinessProcessTask/{taskId}/duplicate
→ Nhân bản Deal
Response mẫu
{ "id": "task_003", "name": "Deal A (Bản sao)", "status": 1 }
/api/v1/BusinessProcessTask/{taskId}
→ Xóa Deal
Response mẫu
{ "success": true, "message": "Deal deleted" }
/api/v1/TaskTag/{taskId}/tags
→ Gán nhãn
Body: tagIds[]
Response mẫu
{ "success": true, "tagIds": ["dtag_01", "dtag_02"] }
/api/v1/BusinessProcessTask/{taskId}/assignee
→ Đổi người phụ trách
Body: userIds[], teamIds[]
Response mẫu
{ "success": true, "assignees": [{ "profileId": "prof_01" }] }
Quản lý cuộc họp, cuộc gọi, tài liệu cho Lead/Deal. Tất cả API dùng host calendar.coka.ai.
{CALENDAR_URL}/api/Schedule
→ Lấy danh sách hoạt động
Query: contactId, organizationId
Response mẫu
{ "data": [{ "id": "sch_01", "title": "Gọi điện", "schedulesType": "call", "startTime": "2026-03-20T09:00:00Z", "isDone": false }] }
{CALENDAR_URL}/api/Schedule
→ Tạo hoạt động mới
Body: title, schedulesType, startTime, endTime, contactId
Response mẫu
{ "id": "sch_02", "title": "Họp báo giá", "schedulesType": "meeting", "startTime": "2026-03-21T14:00:00Z" }
{CALENDAR_URL}/api/Schedule
→ Sửa hoạt động đã tạo
Body: scheduleId + fields cần sửa
Response mẫu
{ "success": true, "id": "sch_02", "title": "Họp báo giá (cập nhật)" }
{CALENDAR_URL}/api/Schedule/mark-as-done
→ Đánh dấu hoàn thành
Body: scheduleId, isDone
Response mẫu
{ "success": true, "id": "sch_01", "isDone": true }
Tạo đơn hàng với sản phẩm, gắn vào Deal. Thường gọi sau khi tạo Deal thành công. Gọi tuần tự: lấy sản phẩm → tạo order → liên kết → đánh dấu hoàn thành.
{PRODUCTS_URL}/api/v1/product
→ Lấy danh sách sản phẩm
Hỏi người dùng chọn sản phẩm + số lượng → tính totalPrice
Response mẫu
{ "data": [{ "id": "prod_01", "name": "Căn hộ 2PN", "price": 2500000000 }] }
{PRODUCTS_URL}/api/v1/order
→ Tạo đơn hàng
Body: orderDetails[{productId, quantity, unitPrice}], totalPrice, actor
Response mẫu
{ "id": "order_001", "totalPrice": 2500000000, "status": "CREATED" }
{PRODUCTS_URL}/api/v1/businessprocesstask/{taskId}/link-order
→ Liên kết đơn hàng với Deal
Body: orderId
Response mẫu
{ "success": true, "message": "Order linked successfully" }
{BASE_URL}/api/v2/lead/{leadId}/flow/step/update
→ Hoàn thành bước chăm sóc Lead
Response mẫu
{ "success": true, "message": "Flow step updated" }