Vai trò của API trong n8n:
n8n hoạt động như một trung tâm điều phối. Nó sử dụng API để:
- Kích hoạt (Trigger): Chờ một sự kiện xảy ra từ một dịch vụ (ví dụ: có tin nhắn mới trong Telegram, có file mới trong Google Drive).
- Hành động (Action): Thực hiện một hành động trên một dịch vụ khác (ví dụ: gửi email qua Gmail, tạo bản ghi trong Airtable, đăng bài lên Slack).
- HTTP Request (Yêu cầu HTTP) : Đây là cách phổ biến nhất để giao tiếp với API. Một request thường có:
- URL (Endpoint): Địa chỉ của API.
- Method (Phương thức):
- GET
- : Lấy dữ liệu.
- POST
- : Tạo mới dữ liệu.
- PUT/PATCH
- : Cập nhật dữ liệu.
- DELETE: Xóa dữ liệu.
- Headers: Chứa thông tin bổ sung (ví dụ: mã xác thực - API Key).
- Body: Dữ liệu gửi kèm (dùng cho POST, PUT).
Authentication (Xác thực): API cần biết bạn là ai và có quyền gì. Các cách phổ biến trong n8n:
API Key: Một chuỗi ký tự bí mật, có thể gửi ở Header hoặc Query Parameters.
OAuth: Một phương thức an toàn hơn, n8n sẽ hướng dẫn bạn đăng nhập để cấp quyền.
Basic Auth: Cung cấp Tên đăng nhập và Mật khẩu.
JSON (JavaScript Object Notation): Đây là định dạng dữ liệu phổ biến nhất mà API trao đổi. Nó rất dễ đọc và n8n làm việc với nó cực kỳ hiệu quả.
{ "userId": 1, "id": 1, "title": "delectus aut autem", "completed": false }
Hãy bắt tay vào xây dựng một vài Workflow đơn giản.
Ví dụ 1: Lấy dữ liệu công khai từ một API (GET Request)
Mục tiêu: Tạo workflow lấy thông tin một bài viết ngẫu nhiên từ JSONPlaceholder (một API mẫu miễn phí) và lưu tiêu đề của nó vào một file text.
Các bước:
Thêm Node HTTP Request:
Kéo node HTTP Request từ panel bên trái vào canvas.
Cấu hình node:
Method: GET
URL:
https://jsonplaceholder.typicode.com/posts/1(API này trả về bài viết có ID=1).
Thêm Node Set:
Chúng ta muốn trích xuất tiêu đề từ kết quả trả về.
Kéo node Set vào, kết nối sau node HTTP Request.
Cấu hình node:
Trong mục Add Value, chọn String.
Name:
postTitleValue:
{{ $json.title }}(Đây là cú pháp Expression của n8n để lấy giá trịtitletừ dữ liệu JSON trả về).
Thêm Node File Writer (Ghi File):
Kéo node File Writer vào, kết nối sau node Set.
Cấu hình node:
Operation: Write
File Name:
bai_viet_ngau_nhien.txtData:
{{ $json.postTitle }}(Lấy giá trị từ biếnpostTitlemà chúng ta đã đặt ở node trước).
Chạy thử:
Nhấp vào Execute Workflow.
Bạn sẽ thấy dữ liệu chạy qua từng node. Mở file
bai_viet_ngau_nhien.txttrong thư mục n8n để xem kết quả.
Ví dụ 2: Tạo một Webhook đơn giản & Gửi thông báo đến Telegram (POST Request)
Mục tiêu: Tạo một URL đặc biệt (Webhook) mà khi có ai gửi dữ liệu đến URL đó, n8n sẽ tự động gửi một thông báo đến nhóm/kênh Telegram của bạn.
Chuẩn bị:
Một Bot Telegram và Chat ID của nhóm/kênh bạn muốn gửi tin. (Bạn có thể tìm hướng dẫn tạo Bot Telegram với BotFather trên Google).
Các bước:
Thêm Node Webhook:
Kéo node Webhook vào canvas. Node này sẽ lắng nghe các request từ bên ngoài.
Cấu hình node:
Authentication: None (cho mục đích demo).
HTTP Method: POST
Path:
/my-webhook(bạn có thể đặt tên khác). Lưu ý URL đầy đủ được hiển thị ngay bên dưới.
Thêm Node Telegram:
Kéo node Telegram vào, kết nối sau node Webhook.
Cấu hình Credentials (Thông tin xác thực) cho Telegram lần đầu:
Nhấp "Add New Credentials".
Chọn "Telegram Bot API".
Điền Access Token của bot bạn (lấy từ BotFather).
Cấu hình node:
Resource: Message
Operation: Send Message
Chat ID: Điền ID của chat/nhóm mà bot có quyền gửi tin.
Text:
Có thông báo mới! Dữ liệu nhận được: {{ $json.body }}(Giả sử dữ liệu gửi đến webhook có một trường tên làbody).
Kích hoạt Workflow:
Bật công tắc Active trên Workflow. Điều này là bắt buộc để Webhook có thể nhận request.
Kiểm tra:
Sử dụng một công cụ như Postman hoặc curl trong terminal để gửi một POST request đến URL Webhook mà n8n cung cấp.
Ví dụ dùng curl:
curl -X POST \ https://your-n8n-domain.com/webhook/my-webhook \ -H 'Content-Type: application/json' \ -d '{"body": "Xin chào từ sinh viên n8n!"}'
Sau khi chạy lệnh này, hãy kiểm tra Telegram. Bạn sẽ thấy bot gửi một tin nhắn với nội dung "Có thông báo mới! Dữ liệu nhận được: Xin chào từ sinh viên n8n!".
Học cách sử dụng Expression Editor: Biểu tượng
</>trong hầu hết các trường nhập liệu của n8n là chìa khóa. Nó cho phép bạn truy cập dữ liệu từ các node trước đó (ví dụ:$json,$binary) và sử dụng các hàm có sẵn.Luôn Test từng Node: Sau khi cấu hình một node, hãy nhấp "Execute Node". Việc này giúp bạn kiểm tra xem node đó có hoạt động đúng và xem dữ liệu đầu ra trông như thế nào trước khi chuyển sang node tiếp theo.
Đọc Documentation của API: Khi kết nối với một API mới (như Slack, Airtable, Notion), hãy dành thời gian đọc tài liệu của họ. Nó sẽ cho bạn biết chính xác URL, phương thức, headers và body cần thiết.
Bắt đầu đơn giản: Đừng cố xây dựng một workflow phức tạp ngay lập tức. Hãy bắt đầu với 2-3 node, test kỹ, rồi mở rộng dần.
Quản lý Thông tin Xác thực Cẩn thận: Đừng bao giờ chia sẻ API Key của bạn. Sử dụng tính năng Credentials của n8n một cách an toàn.
– giúp bảo mật hơn
✔ Dùng "Execute Node" để test node từng bước– dễ debug
✔ Thêm node "IF" để kiểm tra lỗi HTTP status != 200– tránh workflow bị lỗi giữa chừng
✔ Ghi log bằng "Write Binary File" hoặc "Google Sheets"– lưu lại phản hồi API
✔ Sử dụng biểu thức (Expressions)
Ví dụ:
– giúp workflow động và linh hoạt hơn
Làm chủ API trong n8n giống như việc bạn học cách để các "người máy" trên internet giao tiếp và hợp tác với nhau cho bạn. Từ những ví dụ cơ bản như trên, bạn có thể phát triển lên những workflow phức tạp hơn như: tự động lưu file đính kèm Gmail vào Google Drive, đồng bộ hóa khách hàng tiềm năng từ form web vào CRM, hay thậm chí là quản lý cơ sở hạ tầng IT.
Hãy thực hành thật nhiều, không ngại thử nghiệm và mắc lỗi. Chúc bạn thành công trên hành trình khám phá sức mạnh của tự động hóa với n8n
.jpg)

.jpg)
.jpg)
Nhận xét
Đăng nhận xét