Lỗi 401 Unauthorized là mã trạng thái HTTP cho biết máy chủ từ chối yêu cầu vì thiếu hoặc sai thông tin xác thực, như mật khẩu, API key hay token đã hết hạn. Khác với 403 Forbidden (đã xác thực nhưng không có quyền), lỗi 401 thường hết khi bạn đăng nhập lại, gửi đúng header hoặc làm mới token.
Bài này đi từ định nghĩa, cách phân biệt 401 với 403, các nguyên nhân hay gặp, rồi tới cách sửa trên website, khi gọi API và cụ thể trong node HTTP Request của n8n. Thông tin đối chiếu với RFC 9110, MDN và tài liệu docs.n8n.io ngày 22/10/2026.
Lỗi 401 Unauthorized là gì?
Lỗi 401 Unauthorized là phản hồi HTTP nghĩa là yêu cầu chưa được thực hiện vì thiếu thông tin xác thực hợp lệ cho tài nguyên đó. Theo RFC 9110 mục 15.5.2, máy chủ trả 401 phải kèm header WWW-Authenticate nêu tối thiểu một kiểu xác thực áp dụng được, ví dụ Basic hoặc Bearer.
Tên “Unauthorized” dễ gây hiểu nhầm. Mã 401 nói về xác thực (máy chủ chưa biết bạn là ai), không phải phân quyền. MDN tóm tắt: 401 là request thiếu thông tin đăng nhập hợp lệ, còn 403 là thông tin đăng nhập hợp lệ nhưng không đủ quyền.
Bạn thường gặp lỗi 401 ở ba dạng:
- Trình duyệt hiện hộp đăng nhập hoặc trang “401 Unauthorized” khi mở một thư mục hay trang quản trị có bảo vệ.
- Ứng dụng, script hoặc Postman nhận
HTTP/1.1 401 Unauthorizedkhi gọi API với key sai, thiếu hoặc hết hạn. - Trong n8n, node HTTP Request báo “Authorization failed – please check your credentials” kèm Error code 401.
Lỗi 401 và 403 khác nhau thế nào?
Lỗi 401 xảy ra ở bước xác thực: máy chủ chưa xác nhận được danh tính của bạn. Lỗi 403 xảy ra ở bước phân quyền: máy chủ đã hiểu yêu cầu, có thể đã biết bạn là ai, nhưng từ chối thực hiện. Theo RFC 9110 mục 15.5.4, gửi lại 403 với cùng thông tin đăng nhập sẽ không có tác dụng.

Mã Ý nghĩa Ví dụ thường gặp Cách xử lý 401 Unauthorized Thiếu hoặc sai thông tin xác thực API key sai, token hết hạn, quên header Authorization Đăng nhập lại, gửi đúng key/token, làm mới token 403 Forbidden Đã hiểu yêu cầu nhưng từ chối Token thiếu scope, tài khoản không có vai trò quản trị, IP bị chặn Cấp thêm quyền, dùng tài khoản khác, mở IP 404 Not Found Không tìm thấy tài nguyên Sai URL, sai ID; một số máy chủ trả 404 thay cho 403 để giấu tài nguyên Kiểm tra URL và tài liệu API 407 Proxy Authentication Required Giống 401 nhưng ở proxy Mạng công ty bắt đăng nhập proxy Khai báo thông tin đăng nhập proxy 429 Too Many Requests Gửi quá nhiều request Vượt giới hạn tốc độ của API Giãn nhịp gửi, chờ rồi thử lại
Nguyên nhân gây lỗi 401
Lỗi 401 gần như luôn do thông tin xác thực: thiếu, sai, hết hạn, hoặc gửi sai chỗ. Máy chủ vẫn chạy bình thường, nó chỉ không chấp nhận danh tính gửi kèm request. Bảng dưới gom nguyên nhân theo bối cảnh (website, WordPress REST API, API key, OAuth2, proxy) để bạn khoanh vùng nhanh.
Bối cảnh Nguyên nhân hay gặp Dấu hiệu Website, trang quản trị Sai tên đăng nhập hoặc mật khẩu; phiên đăng nhập hết hạn; thư mục được bảo vệ bằng Basic Auth (.htpasswd) Trình duyệt hiện hộp đăng nhập hoặc trang 401 WordPress REST API Gọi endpoint cần đăng nhập mà không gửi Application Password hoặc cookie hợp lệ JSON lỗi kèm mã 401 API dùng API key Key sai, bị thu hồi, chưa kích hoạt, dùng key môi trường thử cho môi trường thật Thông báo kiểu “Invalid API key” API dùng OAuth2 hoặc JWT Access token hết hạn, refresh token bị thu hồi, đổi mật khẩu tài khoản Thông báo “token expired”, “invalid_token” Sai kiểu hoặc vị trí xác thực API cần Bearer nhưng gửi Basic; key phải ở header nhưng lại để trong URL (hoặc ngược lại); thiếu chữ “Bearer “ Header WWW-Authenticate nêu kiểu khác với kiểu bạn gửi Proxy, cổng API Gateway hoặc reverse proxy phía trước yêu cầu xác thực riêng Lỗi đến từ tên miền gateway, không phải dịch vụ gốc
Những lỗi hay bị nhầm là 401
Một số tình huống không trả 401 dù liên quan đến xác thực. Theo tài liệu node HTTP Request của n8n, gửi quá nhiều request là lỗi 429; body hoặc tham số sai định dạng thường là 400 hoặc 415; đủ xác thực nhưng token thiếu quyền (scope) thường là 403. Gặp 429 thì giãn nhịp gửi request, không cần đổi key.
Cách sửa lỗi 401 khi truy cập website
Với người dùng website, lỗi 401 thường do phiên đăng nhập đã hết hoặc trình duyệt đang nhớ thông tin đăng nhập cũ. Phần lớn trường hợp chỉ cần đăng nhập lại hoặc xóa cookie của trang. Thử lần lượt các bước sau, từ nhanh đến lâu:
- Kiểm tra lại URL: gõ sai đường dẫn có thể đưa bạn vào thư mục cần đăng nhập.
- Đăng xuất rồi đăng nhập lại; nếu vẫn lỗi, xóa cookie và cache của riêng trang đó hoặc mở cửa sổ ẩn danh.
- Với thư mục bảo vệ bằng mật khẩu (Basic Auth), hỏi quản trị viên tài khoản đúng; trình duyệt có thể đang nhớ mật khẩu cũ.
- Với quản trị viên: kiểm tra plugin bảo mật, tường lửa ứng dụng hoặc cấu hình .htaccess/.htpasswd vừa thay đổi.
Lỗi 401 trên trang công khai cũng chặn Googlebot. Trang trả 401 sẽ không được lập chỉ mục, nên chỉ đặt mật khẩu cho khu vực thật sự cần bảo vệ.
Cách sửa lỗi 401 khi gọi API
Khi gọi API, cách sửa lỗi 401 là so request của bạn với tài liệu API: đúng kiểu xác thực, đúng vị trí đặt key, key còn hiệu lực. Quy trình 4 bước dưới đây giúp tách lỗi do thông tin đăng nhập với lỗi do cách gửi.

Kiểm tra API key bằng curl hoặc Postman
Gọi thử ngoài n8n giúp biết lỗi nằm ở key hay ở cấu hình node. Lệnh -i in cả mã trạng thái và header, trong đó có WWW-Authenticate nếu máy chủ gửi:
# API nhận key qua header Bearer
curl -i https://api.example.com/v1/me -H "Authorization: Bearer <TOKEN>"
# API nhận key qua tham số URL (ví dụ OpenWeatherMap dùng appid)
curl -i "https://api.openweathermap.org/data/2.5/weather?q=Hanoi&appid=<API_KEY>"
Nếu curl trả 200 mà n8n vẫn 401, lỗi nằm ở cách cấu hình node. Nếu curl cũng 401, kiểm tra lại key trên trang quản lý của nhà cung cấp: key có đúng tài khoản, đã kích hoạt, chưa bị thu hồi. Không dán key thật vào ảnh chụp, ticket hỗ trợ hay nhóm chat.
Cách sửa lỗi 401 khi gọi API trong n8n
Trong n8n, lỗi 401 hiện ở node HTTP Request với thông báo “Authorization failed – please check your credentials”. Cách sửa bền là đưa thông tin xác thực vào credential thay vì dán vào URL hay header thủ công. Phần này dùng ví dụ OpenWeatherMap; cách làm giống hệt với API khác. Nếu bạn mới làm quen node này, đọc trước cách thêm API vào n8n bằng node HTTP Request.
Dựng lại lỗi 401 với OpenWeatherMap
Bước 1: Đăng ký tài khoản miễn phí tại openweathermap.org/api và lấy API key ở mục API keys. Key mới có thể cần một khoảng thời gian mới hoạt động.

Bước 2: Tạo workflow mới, thêm Manual Trigger (“When clicking ‘Execute workflow'”) rồi nối với một node HTTP Request.

Bước 3: Cấu hình node HTTP Request với Method GET và URL https://api.openweathermap.org/data/2.5/weather?q=Hanoi, chưa gửi key. Bấm Execute step: node báo 401 vì request không có thông tin xác thực.

Sửa bằng credential Query Auth thay vì dán key vào URL
Cách nhanh là thêm &appid=API_KEY vào URL, nhưng key khi đó nằm trong cấu hình workflow: lộ khi bạn export, chia sẻ workflow hay chụp màn hình. Theo tài liệu credential của node HTTP Request, nên dùng Generic credential:
- Trong node HTTP Request, mục Authentication chọn Generic Credential Type, Generic Auth Type chọn Query Auth.
- Tạo credential mới: Name là
appid, Value là API key của bạn, rồi lưu. - Giữ URL
https://api.openweathermap.org/data/2.5/weather?q=Hanoi&units=metric; n8n tự thêmappidkhi gửi. - Bấm Execute step lại. Node trả JSON thời tiết;
units=metricđổi nhiệt độ từ Kelvin sang độ C.

API cần key trong header thì chọn Header Auth (Name ví dụ X-API-Key hoặc Authorization, Value là key hoặc Bearer <token>). Dịch vụ có sẵn node riêng như Google Sheets, Telegram, OpenAI thì ưu tiên Predefined Credential Type của dịch vụ đó. Xem thêm credential trong n8n là gì và cách quản lý.
Lỗi 401 với OAuth2 trong n8n
Với credential OAuth2, lỗi 401 xuất hiện sau một thời gian chạy ổn thường do access token hoặc refresh token đã hết hiệu lực. Mở credential, bấm kết nối lại tài khoản rồi chạy lại node. Riêng Google, ứng dụng OAuth để ở trạng thái Testing có refresh token hết hạn sau 7 ngày; cách xử lý có trong bài sửa lỗi tích hợp Google Sheets, Google Drive với n8n.
Lỗi 401 chỉ là một dòng trong bảng mã lỗi khi gọi API. Các mã khác như 400, 403, 404, 429, 5xx và lỗi kết nối được tổng hợp ở bảng mã lỗi API thường gặp trong n8n.
Những câu hỏi thường gặp
401 là lỗi gì, do máy mình hay do máy chủ?
Lỗi 401 là lỗi phía client theo phân loại HTTP (nhóm 4xx): máy chủ vẫn hoạt động, nhưng request của bạn thiếu hoặc sai thông tin xác thực. Phần cần sửa thường ở thông tin đăng nhập, key hoặc token bạn gửi. Ngoại lệ là khi nhà cung cấp vừa đổi cơ chế xác thực hoặc thu hồi key hàng loạt.
Đặt API key trong URL hay trong header thì an toàn hơn?
Header an toàn hơn vì URL dễ bị ghi vào log máy chủ, lịch sử trình duyệt và ảnh chụp màn hình. Nhiều API chỉ nhận key qua URL (như OpenWeatherMap); khi đó trong n8n hãy dùng credential Query Auth để key không nằm trong cấu hình workflow.
Tôi đã nhập đúng API key nhưng vẫn bị 401, tại sao?
Kiểm tra ba điểm: key có đặt đúng vị trí API yêu cầu (header, query hay body) và đúng tên tham số không; định dạng header có đủ, ví dụ thiếu chữ “Bearer ” hoặc thừa khoảng trắng; key có thuộc đúng môi trường (thử hay thật) và đã được kích hoạt chưa.
Lỗi 401 có tự hết không?
Lỗi 401 không tự hết nếu thông tin xác thực vẫn sai. Ngoại lệ là khi máy chủ xác thực của nhà cung cấp gặp sự cố tạm thời. Với token hết hạn, bạn cần làm mới token hoặc kết nối lại tài khoản.
Thử lại tự động (Retry On Fail) có sửa được lỗi 401 không?
Không. Retry On Fail trong n8n hữu ích cho lỗi tạm thời như 429 hay 5xx. Với 401, gửi lại cùng thông tin đăng nhập vẫn bị từ chối, nên hãy sửa credential trước.
Muốn chạy n8n 24/7 mà không tự cài? VPS n8n của Tino cài sẵn n8n trên VPS NVMe đặt tại Việt Nam; bạn vẫn có quyền root để cấu hình. Xem cấu hình và giá trên trang sản phẩm.
