Phần 1: Quy trình Authorize với Lark Suite
Quy trình này nhằm cấp quyền để bạn có access_token gọi được API
Bước 1: Thiết lập ứng dụng trên Lark Developer Platform
- Đăng nhập vào Lark Developer Platform:
- Truy cập Lark Developer Platform
- Đăng nhập bằng tài khoản Lark Suite của bạn
- Tạo ứng dụng mới:
- Chọn “Create Custom App”
- Điền thông tin cơ bản (tên, mô tả, logo)
- Cấu hình quyền truy cập:
- Trong menu bên trái, chọn “Permission”
- Tìm và thêm quyền liên quan đến Base:
base:record:read
– Đọc dữ liệubase:record:write
– Ghi dữ liệubase:table:read
– Đọc cấu trúc bảng
- Thiết lập Redirect URL:
- Trong menu bên trái, chọn “Security & Certification”
- Tại mục “Redirect URLs”, thêm URL của webhook N8N
- URL webhook có định dạng:
http://your-n8n-url/webhook/lark-authorize
(trong template có node webhook, bạn lấy link ở đó nhé) - Lưu ý: Nếu dùng localhost, URL sẽ là
http://localhost:5678/webhook/lark-authorize
- Lấy App ID và App Secret:
- Trong menu bên trái, chọn “Credentials”
- Sao chép “App ID” và “App Secret” (cần cho bước tiếp theo)
Bước 2: Thiết lập Webhook Authorize trong N8N
- Import template workflow authorize:
- Mở N8N và import template workflow đã cung cấp
- Hoặc tạo workflow mới và đặt tên là “Lark Base Authorize”
- Thiết lập node Webhook:
- Thêm node “Webhook” vào workflow
- Cấu hình:
- Method: GET
- Path:
/lark-authorize
- Authentication: None
- Respond: Immediately
- Tạo URL Authorization: Link này tạo ra để truy cập vào nó sẽ vào Larksuite để bạn cấp quyền cho App, Cấp quyền xong nó mới redirect tới link webhook để tạo access_token bạn nhé.
Tạo link thủ công:
Sử dụng mẫu URL sau:https://open.larksuite.com/open-apis/authen/v1/index?app_id=YOUR_APP_ID&redirect_uri=YOUR_WEBHOOK_URL
ThayYOUR_APP_ID
bằng App ID đã sao chép
ThayYOUR_WEBHOOK_URL
bằng URL webhook đã lưu ở bước trước
Lưu ý: URL webhook cần được mã hóa (URL encode) nếu có ký tự đặc biệt
Trong template có cơ chế gia hạn token tự động rồi nhé. Bạn không lo token hết hạn nữa.
Sau khi chứng thực xong bạn vào bước 2 để gọi API nhé
Phần 2: Sử dụng template N8N Lark Suite để gọi API chèn record
Template có sẵn một số node như thêm record, find, update. Bạn chỉ cần nối với Access token là nó chạy được. Đương nhiên bạn cần chuẩn bị data cho api nhé.
Bên dưới mình mô tả rõ hơn các API gồm link, đầu vào của nó để bạn tham khảo
Phần 3: Thao tác với Lark Base (Bitable)
1. Tạo record mới (Insert Record)
Thêm HTTP Request node với cấu hình:
- Method: POST
- URL: https://open.larksuite.com/open-apis/bitable/v1/apps/{BASE_ID}/tables/{TABLE_ID}/records
- Headers:
+ Authorization: Bearer {TOKEN}
+ Content-Type: application/json
- Body:
{
"fields": {
"Tên": "Nguyễn Văn A",
"SĐT": "0912345678",
"Email": "example@gmail.com"
}
}
Trong đó:
{BASE_ID}
: ID của Lark Base (lấy từ URL){TABLE_ID}
: ID của bảng cần thêm dữ liệu{TOKEN}
: Token từ file đã lưu (template đã xử lý phần này)
2. Tìm kiếm record (Find Record)
Thêm HTTP Request node với cấu hình:
- Method: GET
- URL: https://open.larksuite.com/open-apis/bitable/v1/apps/{BASE_ID}/tables/{TABLE_ID}/records?filter=SĐT="0912345678"
- Headers:
+ Authorization: Bearer {TOKEN}
3. Cập nhật record (Update Record)
Thêm HTTP Request node với cấu hình:
- Method: PUT
- URL: https://open.larksuite.com/open-apis/bitable/v1/apps/{BASE_ID}/tables/{TABLE_ID}/records/{RECORD_ID}
- Headers:
+ Authorization: Bearer {TOKEN}
+ Content-Type: application/json
- Body:
{
"fields": {
"Tên": "Nguyễn Văn A (Đã cập nhật)",
"Email": "new_email@gmail.com"
}
}
Phần 5: Lưu ý quan trọng khi sử dụng
Cách lấy các ID cần thiết
- Lấy BASE_ID:
- Mở Lark Base của bạn
- ID nằm trong URL:
https://appxxxxxxxx.feishu.cn/base/bascnxxxxxxxxxx
bascnxxxxxxxxxx
là BASE_ID
- Lấy TABLE_ID:
- Mở bảng cần thao tác
- ID nằm trong URL sau
tbl
- Ví dụ:
.../tblxxxxxx/...
→ TABLE_ID làtblxxxxxx
Kiểm tra token và sự cố
- Token không hoạt động: Truy cập lại URL webhook authorize
- Lỗi quyền truy cập: Kiểm tra quyền trong Lark Developer Platform
- Lỗi định dạng dữ liệu: In ra JSON dữ liệu để kiểm tra
Tổng kết
Với hướng dẫn này, bạn đã có thể:
- Thiết lập ứng dụng Lark và quy trình authorize
- Tạo URL authorize và webhook để xử lý callback
- Lưu và tự động làm mới token
- Thao tác CRUD với dữ liệu trong Lark Base
- Xử lý dữ liệu động từ nhiều nguồn khác nhau
Hãy nhớ, template đã xử lý phần phức tạp nhất là xác thực và làm mới token. Bạn chỉ cần:
- Cập nhật App ID và App Secret
- Truy cập URL webhook authorize để bắt đầu
- Tập trung vào việc thao tác dữ liệu
Chúc bạn thành công trong việc kết nối N8N với Lark Base!