Dành cho lập trình viên
TakaTech Partner API v1.1.0
API cho đối tác, Zalo Mini App, landing page bên ngoài gửi yêu cầu tư vấn / đăng ký demo vào hệ thống TakaTech và lấy danh mục sản phẩm.
- Địa chỉ gốc:
https://takatech.vn/api/v1 - Định dạng: JSON (UTF-8), chuẩn OpenAPI 3.1 – nhập được vào Postman, Insomnia, Swagger.
- Hỗ trợ CORS, nhưng không nên gọi bằng API key từ trình duyệt; hãy gọi từ máy chủ / Cloud Function của bạn.
Xác thực
Mỗi đối tác được cấp một API key dạng tk_live_… (liên hệ TakaTech). Gửi key trong header:
Authorization: Bearer tk_live_xxxxxxxxxxxxxxxxKey chỉ hiển thị một lần khi tạo, TakaTech lưu dạng mã băm và có thể thu hồi bất cứ lúc nào. Nếu nghi lộ key, báo ngay để cấp key mới.
Giới hạn & mã lỗi
| Mã | Ý nghĩa |
|---|---|
201 | Tạo thành công |
400 | Body không phải JSON |
401 | Thiếu, sai hoặc đã thu hồi API key |
422 | Dữ liệu không hợp lệ – xem error.details (lỗi theo từng trường) |
429 | Vượt 60 yêu cầu/phút cho mỗi key |
Danh sách endpoint
/api/v1/leadsCần API keyGửi yêu cầu tư vấn / đăng ký demo
Tạo một yêu cầu mới; đội kinh doanh TakaTech nhận thông báo ngay. Giới hạn 60 yêu cầu/phút cho mỗi API key.
/api/v1/productsCông khaiDanh mục sản phẩm
Danh sách sản phẩm phần mềm TakaTech (không cần API key).
/api/v1/healthCông khaiKiểm tra trạng thái API
POST /leads – các trường dữ liệu
| Trường | Kiểu | Mô tả |
|---|---|---|
type | CONSULT | DEMO | TRAINING | Loại yêu cầu |
name* | string (≤120) | Họ tên người liên hệ VD: Nguyễn Văn A |
phone* | string | SĐT Việt Nam (0xxxxxxxxx hoặc +84xxxxxxxxx) VD: 0914586999 |
email | VD: a@donvi.vn | |
organization | string (≤200) | Tên đơn vị (form website bắt buộc khi đăng ký demo/đào tạo) VD: UBND phường X |
service | string (≤120) | Lĩnh vực / dịch vụ quan tâm VD: Website & Trang thông tin điện tử |
product | string (≤120) | Sản phẩm – bắt buộc khi type=DEMO VD: TakaTech ZNS Portal |
attendees | integer | Số học viên (type=TRAINING) |
message | string (≤3000) | Nội dung yêu cầu |
utmSource | string (≤100) | |
utmMedium | string (≤100) | |
utmCampaign | string (≤100) | |
source | string (≤255) | Nguồn gửi, VD: zalo-mini-app, landing-hoi-cho VD: zalo-mini-app |
Ví dụ
curl -X POST https://takatech.vn/api/v1/leads \
-H "Authorization: Bearer tk_live_xxxxxxxxxxxxxxxx" \
-H "Content-Type: application/json" \
-d '{
"type": "DEMO",
"name": "Nguyễn Văn A",
"phone": "0914586999",
"organization": "UBND phường X",
"product": "TakaTech ZNS Portal",
"source": "landing-hoi-cho"
}'// Chạy trên máy chủ của bạn (không để lộ API key ở trình duyệt)
const res = await fetch('https://takatech.vn/api/v1/leads', {
method: 'POST',
headers: {
Authorization: `Bearer ${process.env.TAKATECH_API_KEY}`,
'Content-Type': 'application/json',
},
body: JSON.stringify({ name: 'Nguyễn Văn A', phone: '0914586999', message: 'Cần tư vấn website' }),
});
const body = await res.json();
if (!body.success) throw new Error(body.error.message);
const { id } = body.data;<?php
$ch = curl_init('https://takatech.vn/api/v1/leads');
curl_setopt_array($ch, [
CURLOPT_POST => true,
CURLOPT_RETURNTRANSFER => true,
CURLOPT_HTTPHEADER => [
'Authorization: Bearer ' . getenv('TAKATECH_API_KEY'),
'Content-Type: application/json',
],
CURLOPT_POSTFIELDS => json_encode([
'name' => 'Nguyễn Văn A', 'phone' => '0914586999', 'service' => 'Website & Trang thông tin điện tử',
]),
]);
$res = json_decode(curl_exec($ch), true);
$status = curl_getinfo($ch, CURLINFO_HTTP_CODE); // 201 = thành công{ "success": true, "data": { "id": "6674d02a-85f1-4e47-a427-f762338c2dd5" } }{ "success": false, "error": { "code": "VALIDATION_ERROR", "message": "Vui lòng kiểm tra lại thông tin.", "details": { "phone": "Số điện thoại chưa đúng định dạng" } } }GET /products
curl https://takatech.vn/api/v1/productsTrả về danh sách sản phẩm (slug, name, tagline, audience, url) để hiển thị lựa chọn trong form của bạn; giá trị name dùng cho trường product khi đăng ký demo.