close

Lỗi 401 Unauthorized là gì? Nguyên nhân và cách khắc phục

Tác giả: Đông Tùng Ngày đăng: 14/08/2025 Chuyên mục: n8n
Disclosure
Website Tino blog được cung cấp bởi Tino Group. Truy cập và sử dụng website đồng nghĩa với việc bạn đồng ý với các điều khoản và điều kiện trong chính sách bảo mật - điều khoản sử dụng nội dung. Tino Group có thể thay đổi điều khoản sử dụng bất cứ lúc nào. Việc bạn tiếp tục sử dụng Tino blog sau khi thay đổi có nghĩa là bạn chấp nhận những thay đổi đó.
Why Trust Us
Các bài viết với hàm lượng tri thức cao tại Tino blog được tạo ra bởi các chuyên viên Marketing vững chuyên môn và được kiểm duyệt nghiêm túc theo chính sách biên tập bởi đội ngũ biên tập viên dày dặn kinh nghiệm. Mọi nỗ lực của chúng tôi đều hướng đến mong muốn mang đến cho cộng đồng nguồn thông tin chất lượng, chính xác, khách quan, đồng thời tuân thủ các tiêu chuẩn cao nhất trong báo cáo và xuất bản.

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 Unauthorized khi 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.

Sơ đồ so sánh lỗi 401 và 403: request đi qua bước xác thực (thiếu hoặc sai thông tin trả 401 kèm WWW-Authenticate) rồi bước phân quyền (không đủ quyền trả 403), qua cả hai thì trả 200 OK; 407 là 401 của proxy, 404 có thể dùng để giấu tài nguyên
MãÝ nghĩaVí dụ thường gặpCách xử lý
401 UnauthorizedThiếu hoặc sai thông tin xác thựcAPI 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ốiToken thiếu scope, tài khoản không có vai trò quản trị, IP bị chặnCấp thêm quyền, dùng tài khoản khác, mở IP
404 Not FoundKhông tìm thấy tài nguyênSai URL, sai ID; một số máy chủ trả 404 thay cho 403 để giấu tài nguyênKiểm tra URL và tài liệu API
407 Proxy Authentication RequiredGiống 401 nhưng ở proxyMạng công ty bắt đăng nhập proxyKhai báo thông tin đăng nhập proxy
429 Too Many RequestsGửi quá nhiều requestVượt giới hạn tốc độ của APIGiãn nhịp gửi, chờ rồi thử lại
Phân biệt 401 với các mã lỗi dễ nhầm (theo RFC 9110 và RFC 6585, truy cập 22/10/2026)

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ảnhNguyên nhân hay gặpDấ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 APIGọ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 keyKey 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ậtThông báo kiểu “Invalid API key”
API dùng OAuth2 hoặc JWTAccess token hết hạn, refresh token bị thu hồi, đổi mật khẩu tài khoảnThông báo “token expired”, “invalid_token”
Sai kiểu hoặc vị trí xác thựcAPI 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 APIGateway hoặc reverse proxy phía trước yêu cầu xác thực riêngLỗ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:

  1. 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.
  2. Đă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.
  3. 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ũ.
  4. 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.

Quy trình 4 bước sửa lỗi 401: đọc header WWW-Authenticate và nội dung lỗi, kiểm tra key hoặc token còn hiệu lực, gửi đúng vị trí và định dạng (Authorization Bearer, query appid, X-API-Key), thử bằng curl hoặc Postman rồi tạo credential trong n8n

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.

Trang API keys của OpenWeatherMap với key mặc định đã được che, trạng thái đang bật và ô tạo key mới

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.

Workflow mẫu trong n8n gồm Manual Trigger nối với node HTTP Request gọi API OpenWeatherMap

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.

Node HTTP Request trong n8n báo lỗi 401 Authorization failed - please check your credentials khi gọi OpenWeatherMap không kèm API key

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:

  1. Trong node HTTP Request, mục Authentication chọn Generic Credential Type, Generic Auth Type chọn Query Auth.
  2. Tạo credential mới: Name là appid, Value là API key của bạn, rồi lưu.
  3. Giữ URL https://api.openweathermap.org/data/2.5/weather?q=Hanoi&units=metric; n8n tự thêm appid khi gửi.
  4. Bấm Execute step lại. Node trả JSON thời tiết; units=metric đổi nhiệt độ từ Kelvin sang độ C.
Panel OUTPUT của node HTTP Request trả JSON thời tiết Hà Nội gồm coord, weather, main với nhiệt độ 31,41 độ C sau khi sửa lỗi 401

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.

Đông Tùng

Senior Technology Writer

Là cử nhân Quản trị kinh doanh của Trường Đại học Tài chính - Marketing, Tùng bắt đầu làm việc tại Tino Group từ năm 2021 ở vị trí Content Marketing để thỏa mãn niềm đam mê viết lách của bản thân. Sở hữu khả năng sáng tạo đặc biệt, anh cùng đội ngũ của mình đã tạo nên những chiến dịch quảng cáo độc đáo cùng vô số bài viết hữu ích về nhiều chủ đề khác nhau. Sự tỉ mỉ, kiên trì và tinh thần sáng tạo của Tùng đã góp phần lớn vào thành công của Tino Group trong lĩnh vực marketing trực tuyến.

Xem thêm bài viết

Bài viết liên quan