Một trong những tính năng quan trọng nhất của n8n so với các công cụ tương tự trên thị trường là khả năng tích hợp API, giúp bạn kết nối và tương tác với các dịch vụ bên ngoài. Tuy nhiên, đối với người mới, việc thêm API có thể gây khó khăn nếu chưa hiểu rõ quy trình. Trong bài viết này, Tino sẽ hướng dẫn bạn cách thêm API vào n8n bằng HTTP Request chi tiết.
Tổng quan về API trong n8n
API là gì?
API (Application Programming Interface) là một tập hợp các quy tắc và giao thức cho phép hai ứng dụng phần mềm giao tiếp với nhau. Hiểu đơn giản, API đóng vai trò như một “cầu nối” giữa các hệ thống khác nhau, giúp chúng chia sẻ dữ liệu và thực hiện các tác vụ mà không cần phải hiểu chi tiết về cách hoạt động bên trong của nhau.
Ví dụ: Khi bạn sử dụng một ứng dụng di động để đặt hàng trên một nền tảng thương mại điện tử, ứng dụng đó có thể gọi API của hệ thống thanh toán để xử lý giao dịch hoặc gọi API của dịch vụ vận chuyển để cập nhật trạng thái đơn hàng. API đảm bảo rằng các hệ thống này có thể làm việc cùng nhau một cách mượt mà và hiệu quả.

Về cơ bản, API hoạt động bằng cách gửi yêu cầu (request) đến một điểm cuối (endpoint) cụ thể và nhận lại phản hồi (response) chứa dữ liệu hoặc hành động được yêu cầu. Ví dụ, API của Trello cho phép bạn tự động tạo thẻ mới, trong khi API của Google Calendar có thể giúp bạn thêm sự kiện mà không cần mở ứng dụng.
Tại sao cần thêm API vào n8n?
Việc thêm API vào n8n là yếu tố cốt lõi để khai thác sức mạnh của công cụ tự động hóa này, đặc biệt đối với người mới muốn tối ưu hóa quy trình làm việc. Dưới đây là những lý do chính:
- Kết nối không giới hạn: Không phải ứng dụng nào cũng có sẵn node trong n8n. Nhờ API, bạn có thể kết nối với bất kỳ nền tảng nào có hỗ trợ REST API – từ các dịch vụ phổ biến đến hệ thống nội bộ.
- Tự động hóa dữ liệu: Khi tích hợp API, bạn có thể lấy dữ liệu từ hệ thống A và gửi qua hệ thống B một cách hoàn toàn tự động (ví dụ: lấy thông tin đơn hàng và gửi sang Google Sheet).
- Tối ưu quy trình làm việc: Thay vì thao tác thủ công, bạn chỉ cần thiết lập một lần và để n8n xử lý tự động mỗi khi có sự kiện xảy ra.
- Tính linh hoạt cao: Với HTTP Request node, bạn có thể tùy chỉnh URL, headers, body,… linh hoạt theo đúng yêu cầu của API mà bạn đang kết nối.
- Hỗ trợ các trường hợp sử dụng tùy chỉnh: Trong nhiều trường hợp, các nhu cầu kinh doanh của bạn có thể không phù hợp hoàn toàn với các tính năng sẵn có của n8n. Thêm API cho phép bạn tùy chỉnh quy trình làm việc để đáp ứng chính xác các yêu cầu cụ thể.

Hướng dẫn cách thêm API vào n8n thông qua node HTTP Request
HTTP Request là gì?
HTTP Request trong n8n là một node (nút) được sử dụng để gửi các yêu cầu HTTP đến một API hoặc dịch vụ bên ngoài, cho phép n8n tương tác với các hệ thống khác để lấy dữ liệu, gửi thông tin hoặc thực hiện các hành động cụ thể. Đây là một trong những node mạnh mẽ và linh hoạt nhất trong n8n, đặc biệt hữu ích khi bạn cần tích hợp với các dịch vụ không có node tích hợp sẵn hoặc muốn tùy chỉnh các yêu cầu API.

Tóm lại, node này hoạt động như một “cầu nối” giữa n8n và các API ngoài, cho phép bạn gửi yêu cầu với các thông tin như URL endpoint, header, tham số hoặc body, sau đó nhận và xử lý phản hồi (thường ở dạng JSON, XML, hoặc text).
Giải thích cấu hình cơ bản của node HTTP Request trong n8n
Khi bạn thêm node HTTP Request vào workflow trong n8n và mở panel cấu hình, bạn sẽ thấy các mục chính. Hãy nghĩ node này như một “lá thư” bạn gửi đến một dịch vụ (API) để lấy hoặc gửi thông tin. Cụ thể:
- Request Method (Phương thức HTTP)
Đây là “hành động” bạn muốn thực hiện với API, giống như nói với dịch vụ bạn muốn làm gì.
Các tùy chọn phổ biến:
- GET: Lấy thông tin (như lấy danh sách bài viết).
- POST: Gửi thông tin để tạo mới (như đăng bài mới).
- PUT: Cập nhật thông tin cũ.
- DELETE: Xóa thông tin.
Hãy nghĩ như bạn đang yêu cầu: “Cho tôi xem” (GET) hoặc “Hãy thêm cái này” (POST).
Ví dụ: Nếu bạn muốn xem danh sách người dùng từ một trang web, chọn GET.
Cách chọn: Kiểm tra tài liệu API của dịch vụ để biết dùng phương thức nào. Thường mặc định là GET.
- URL
Đây là “địa chỉ” của API, nơi bạn gửi “lá thư” đến.
Giống như bạn nhập địa chỉ nhà của một người trên Google Maps. Địa chỉ này phải chính xác để “lá thư” đến đúng nơi.
Lưu ý:
- URL thường bắt đầu bằng http:// hoặc https://.
- Có thể thêm thông tin bổ sung vào URL (như ?id=1 để lọc dữ liệu).
- Bạn có thể dùng giá trị từ node khác, ví dụ: {{ $node[“Trigger”].json[“url”] }}.

- Authentication (Xác thực)
Đây là “chìa khóa” để mở cửa vào dịch vụ, chứng minh bạn được phép sử dụng API.
Tùy chọn:
- None: Không cần chìa khóa (cho API miễn phí, công khai).
- Generic Credential Type: Dùng “chìa khóa” (API key, token) bạn đã lưu trong n8n.
- OAuth2: Đăng nhập qua tài khoản (như Google, Slack).
- Header/Basic Auth: Nhập thông tin trực tiếp (ít dùng hơn).
Ví dụ: Nếu dùng API thời tiết (OpenWeatherMap), bạn cần API key (chìa khóa) để lấy dữ liệu.
- Headers
Đây là thông tin bổ sung gửi kèm “lá thư”, như ghi chú đặc biệt để API hiểu yêu cầu của bạn.
Giống như bạn viết thêm dòng “Gửi gấp” hoặc “Chỉ cho phép người này nhận” trên phong bì thư.
Ví dụ:
- Authorization: Bearer your-token (gửi token để xác thực).
- Content-Type: application/json (nói rằng dữ liệu bạn gửi là định dạng JSON).
- Query Parameters
Đây là các thông tin bổ sung để lọc hoặc điều chỉnh dữ liệu bạn muốn lấy. Giống như bạn hỏi: “Cho tôi danh sách sách, nhưng chỉ lấy sách của tác giả này”.
Ví dụ: Với URL https://jsonplaceholder.typicode.com/posts, bạn có thể thêm userId=1 để chỉ lấy bài viết của người dùng 1.
Lưu ý: Có thể nhập trực tiếp vào URL (như ?userId=1), nhưng dùng tab này dễ quản lý hơn.
- Body
Đây là nội dung bạn gửi đi, thường dùng khi tạo hoặc cập nhật dữ liệu (với POST, PUT, PATCH). Tương tự như khi bạn điền thông tin vào một biểu mẫu và gửi đi.
- Options (Tùy chọn bổ sung)
Các cài đặt phụ để điều chỉnh cách “lá thư” được gửi hoặc nhận. Giống như bạn chọn cách gửi thư: “Gửi nhanh” hoặc “Nhận bằng email”.
Tùy chọn phổ biến:
- Timeout: Thời gian chờ phản hồi (như chờ 30 giây).
- Ignore SSL Issues: Bỏ qua lỗi bảo mật (chỉ dùng cho thử nghiệm).
- Response Format: Chọn kiểu dữ liệu trả về (JSON, Text, File).
Lưu ý: Người mới thường không cần chỉnh, để mặc định là ổn.
Cách thêm API vào n8n thông qua node HTTP Request
Trong bài viết này, Tino sẽ lấy ví dụ tìm hình ảnh miễn phí từ Pexels API để minh họa cho cách thêm API vào n8n thông qua node HTTP Request.
Mục tiêu: Tìm kiếm ảnh liên quan đến từ khóa “coffee” từ thư viện ảnh miễn phí của Pexels.com.
Bước 1: Đăng ký tài khoản và lấy API Key Pexels
- Truy cập: https://www.pexels.com/api/
- Đăng nhập hoặc tạo tài khoản mới
- Chọn mục “Your API Key” → Nhập thông tin theo yêu cầu để lấy API Key của bạn.


Bước 2: Mở workflow → Thêm node HTTP Request.
Phần cấu hình node HTTP Request xuất hiện.

Lưu ý: Bài viết chỉ hướng dẫn cấu hình node HTTP Request để thêm API. Trước node này có thể là các node như:

Bước 3: Quay lại trang Pexels API, bạn chọn mục Documentation.
Giả sử bạn muốn tìm kiếm hình ảnh trên Pexels, bạn vào phần “Search Photos” của tài liệu và thấy Endpoint URL như sau:
GET https://api.pexels.com/v1/search

Đây là địa chỉ API bạn cần dùng để tìm ảnh theo từ khóa.
Trong node HTTP Request, bạn chọn:
- HTTP Method: GET
- Nhập URL (ví dụ): https://api.pexels.com/v1/search?query=coffee&per_page=3

📌 query và per_page là các Query Parameters bạn có thể thay đổi. Tham khảo bước 5.
Bước 4: Pexels yêu cầu cung cấp Authorization vào mục Header.

Bạn bật nút Send Header lên.
- Tại mục Name -> nhập Authorization
- Tại mục Value -> nhập Key API đã copy ở bước 1

Bước 5: Tùy chỉnh Query Parameters – các tham số truyền trên URL
Pexels hỗ trợ các tham số như:

Bạn có thể viết lại URL với các Query Parameters như sau (ví dụ):
https://api.pexels.com/v1/search?query=coffee&per_page=3&orientation=landscape
Ý nghĩa của URL này: Từ khóa tìm kiếm là “coffee”, giới hạn kết quả trả về là 3 ảnh và chỉ lấy ảnh nằm ngang.
Bước 6: Nhấn Test step để kiểm tra:
Pexels trả dữ liệu ở 3 dạng là JSON, Table và Schema. Bạn chọn mục JSON rồi nhấp vào từng hình và copy đường dẫn ở phần URL để kiểm tra trên trình duyệt.


Bước 7: Sử dụng dữ liệu để tự động hóa
Dưới đây là vài ví dụ thực tế bạn có thể làm sau khi lấy được dữ liệu từ HTTP Request:

Phân biệt giữa xác thực Credential và thêm API ngoài qua HTTP Request
Xác thực Credential trong n8n là gì?
Trong n8n, Credential là phần thông tin xác thực (authentication) giúp bạn kết nối an toàn đến các dịch vụ bên ngoài như Google, Facebook, Slack, Telegram,… Khi bạn dùng một node để kết nối đến API, n8n sẽ sử dụng Credential để chứng minh rằng bạn có quyền truy cập vào dịch vụ đó.
Credentials được quản lý tập trung trong phần Credentials của giao diện, cho phép bạn tái sử dụng thông tin xác thực cho nhiều node và workflow mà không cần nhập lại mỗi lần.
Ví dụ, bạn có thể tạo một Credential cho Google Sheets với API key hoặc OAuth token, sau đó sử dụng Credential này cho tất cả các node liên quan đến Google Sheets trong các workflow khác nhau.
Xác thực Credential và thêm API bằng HTTP Request có giống nhau không?
Khi nào cần dùng node HTTP Request?
- n8n không có sẵn node cho dịch vụ bạn dùng. Ví dụ: Bạn muốn gọi một API riêng hoặc dịch vụ ít phổ biến. Khi đó, bạn phải dùng HTTP Request để tự cấu hình URL, phương thức, header, body,…
- Bạn cần tùy chỉnh phức tạp mà node chính thức không hỗ trợ. Ví dụ: Gọi các endpoint đặc biệt không có trong node mặc định.
Khi nào chỉ cần xác thực Credential (mà không cần dùng HTTP Request)?
- n8n đã có sẵn node tích hợp với dịch vụ bạn dùng. Các node này yêu cầu bạn chọn Credential (OAuth2, API Key, hoặc HTTP Auth) → n8n sẽ lo phần còn lại.
- Không cần tự gõ URL, Header, Body,…→ Vì node đó đã cấu hình sẵn. Credential chỉ giúp n8n “kết nối thành công” với dịch vụ.
Bảng so sánh nhanh:

Kết luận
Việc thêm API vào n8n không quá phức tạp nếu bạn hiểu rõ từng bước và nắm được các khái niệm cơ bản. Với bài hướng dẫn chi tiết dành cho người mới này, hy vọng bạn đã có thể tự tin hơn trong việc tự động hóa công việc bằng cách kết nối dữ liệu từ bất kỳ nền tảng nào. Chúc bạn thành công!
Những câu hỏi thường gặp
Làm sao để biết dịch vụ có API hay không?
Hầu hết các dịch vụ lớn đều có trang tài liệu API chính thức. Bạn có thể tìm với cú pháp:[dịch vụ] + API documentation
Làm sao kiểm tra API đã gọi thành công hay chưa?
Sau khi bấm “Test step”, bạn xem phần “Output”:
Nếu báo lỗi → kiểm tra lại URL, Header, Authorization.
Nếu có dữ liệu JSON → API hoạt động tốt.
Một API có thể dùng cho nhiều node trong workflow không?
Hoàn toàn có thể! Bạn có thể:
- Dùng các node khác để xử lý / gửi đi / lưu trữ / lặp lại theo nhu cầu.
- Dùng 1 node HTTP Request để lấy dữ liệu.
Có cần biết lập trình để dùng API trong n8n không?
Không cần biết lập trình chuyên sâu. Nhưng bạn cần:
- Hiểu khái niệm cơ bản như JSON, Header, URL, phương thức GET/POST sẽ rất có ích.
- Biết cách đọc tài liệu API