close

Sửa lỗi tích hợp Google Sheets và Drive với n8n: 403, 404, 429, token 7 ngày

Tác giả: Đông Tùng Ngày đăng: 18/09/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 Google Sheets và Google Drive trong n8n thường thuộc bốn nhóm: xác thực OAuth (403, Access blocked, token hết hạn), quyền truy cập file (404, Permission denied), vượt quota API (429) và sai cấu hình node (sai sheet, sai cột). Bảng dưới đây cho biết thông báo lỗi, nguyên nhân và cách sửa nhanh cho từng nhóm.

Bài thuộc nhóm bài lỗi của n8n; bảng mã lỗi API chung nằm ở lỗi kết nối API thường gặp trong n8n. Nếu chưa tạo credential Google, làm theo cách xác thực credential Google trên n8n trước.

Bảng tra nhanh lỗi Google Sheets/Drive trong n8n

Thông báo lỗiNguyên nhân thường gặpCách sửa
403 “Forbidden – perhaps check your credentials?”, “… API has not been used in project”Chưa bật Google Sheets API hoặc Google Drive API trong project Google CloudBật API trong Google Cloud Console, chờ vài phút, chạy lại
Error 403: access_denied, “Access blocked: … has not completed the Google verification process”App OAuth tự tạo đang ở Testing và email chưa có trong Test usersThêm email vào Test users hoặc Publish app
invalid_grant, phải đăng nhập lại sau khoảng một tuầnApp OAuth ở Testing: refresh token hết hạn sau 7 ngàyChuyển app sang In production rồi kết nối lại credential
redirect_uri_mismatchURL callback trên Google Cloud khác OAuth Redirect URL trong n8nChép đúng URL n8n hiển thị (dạng /rest/oauth2-credential/callback)
Permission denied, Insufficient permissionsBỏ sót quyền khi bấm Allow, hoặc tài khoản không có quyền sửa fileKết nối lại, tích đủ quyền; chia sẻ file cho tài khoản đó với quyền Editor
404 “The resource you are requesting could not be found”Sai ID file, file đã xóa, hoặc tài khoản credential không được chia sẻ fileKiểm tra ID giữa /d/ và /edit, kiểm tra Share
429 Too Many Requests, 403 User rate limit exceededVượt quota request mỗi phútGộp dòng, thêm Wait, giảm tần suất; xem mục quota
Chạy thành công nhưng Sheet không có dữ liệuDữ liệu vào rỗng, sai sheet, tên cột không khớpXem output node trước, kiểm tra Mapping Column Mode
Lỗi Google Sheets/Drive hay gặp trong n8n (đối chiếu docs Google và n8n, 22/10/2026)

Google Sheets và Drive thường dùng vào việc gì trong n8n?

Biết workflow dùng Google ở vai trò nào giúp đoán lỗi nhanh hơn: ghi nhiều dòng dễ vượt quota, đọc file của người khác dễ gặp 404, chia sẻ file cần quyền Drive đầy đủ.

  • Ghi dữ liệu (data logging): lưu lead từ form, đơn hàng mới từ Shopify, WooCommerce, bình luận mạng xã hội vào Google Sheets.
  • Làm nguồn dữ liệu: đọc danh sách email để gửi thư cá nhân hóa, đọc bảng giá để tạo báo giá, đồng bộ danh bạ vào CRM.
  • Theo dõi trạng thái: tìm dòng của ứng viên hoặc ticket và cập nhật cột “Trạng thái” khi hệ thống khác thay đổi.
  • Báo cáo đơn giản: cuối ngày ghi tổng doanh thu, số đơn; mỗi sáng kéo số liệu quảng cáo về một trang tính.
  • Lưu và sắp xếp file trên Drive: lưu hóa đơn đính kèm email theo tên chuẩn, tạo bộ thư mục cho dự án mới, tải bản sao lưu lên Drive.
  • Tạo tài liệu và chia sẻ: điền mẫu Google Docs thành hợp đồng, báo giá rồi chia sẻ quyền xem cho khách.

Vì sao n8n báo 403 Forbidden khi kết nối Google?

n8n báo “Forbidden – perhaps check your credentials?” (mã 403) khi Google từ chối yêu cầu của credential. Phần chi tiết lỗi thường nói rõ lý do; trong ảnh dưới là Google Sheets API chưa được bật trong project.

Node Append row in sheet trong n8n báo lỗi 403 Forbidden - perhaps check your credentials, phần chi tiết lỗi về Google Sheets API chưa bật (mã project đã che)

Nguyên nhân:

  • Chưa bật API tương ứng (Google Sheets API cho Sheets, Google Drive API cho Drive) trong project Google Cloud.
  • Redirect URI sai, hoặc email chưa được thêm vào Test users khi app OAuth còn ở Testing.
  • Credential tạo bằng tài khoản Google khác với tài khoản sở hữu project.

Cách xử lý:

  • Vào Google Cloud Console > APIs & Services > Library, tìm Google Sheets API (và Google Drive API), bấm Enable. Chờ vài phút rồi chạy lại node.
Trang Google Sheets API trong Google Cloud Console với nút Enable để bật API
  • Trong Google Auth Platform > Audience, nếu Publishing status là Testing thì thêm email của bạn vào Test users (Add users).
Mục Audience của Google Auth Platform ở trạng thái Testing, nút Add users để thêm test user
  • Kiểm tra Authorized redirect URI trên Google Cloud trùng với OAuth Redirect URL n8n hiển thị trong credential, dạng https://<tên-miền-n8n>/rest/oauth2-credential/callback.
  • Tạo lại credential trong n8n và bấm Sign in with Google để xác thực lại.

Vì sao Google báo “Access blocked” hoặc Permission denied?

Thông báo “Access blocked: … has not completed the Google verification process” (Error 403: access_denied) xuất hiện khi bạn dùng app OAuth tự tạo chưa publish và tài khoản đăng nhập không nằm trong Test users. Permission denied xảy ra khi n8n làm một việc (ví dụ ghi dữ liệu, tải file lên) mà bạn chưa cấp quyền lúc đăng nhập.

Nguyên nhân:

  • Bỏ sót ô quyền khi Google hỏi (chỉ cấp quyền xem, không cấp quyền sửa).
  • Tài khoản Google đăng nhập ở credential khác tài khoản được thêm vào Test users.
  • App OAuth chưa được Google xác minh mà lại dùng scope nhạy cảm cho người dùng ngoài.

Cách xử lý:

  • Bấm Reconnect trong credential, ở màn hình chọn quyền tích đủ các ô như “Xem, chỉnh sửa, tạo và xóa tất cả tệp Google Drive của bạn” hoặc “Xem và quản lý bảng tính Google Sheets”.
Màn hình Google hỏi quyền khi kết nối n8n với các ô Xem, chỉnh sửa, tạo và xóa tất cả tệp Google Drive chưa được tích (tên miền ứng dụng đã che)
  • Nếu bị Access blocked: thêm email vào Test users, hoặc vào Google Auth Platform > Audience bấm Publish app.
Mục Audience trong Google Auth Platform, Publishing status Testing và nút Publish app
  • Trên n8n Cloud, nhiều node Google có nút Sign in with Google dùng app OAuth đã được xác minh của n8n, không cần tự tạo app; lỗi Access blocked chỉ gặp khi bạn tự tạo app (docs n8n: Google OAuth2 single service).

Vì sao credential Google phải đăng nhập lại sau 7 ngày?

Đây là lỗi hay gặp nhất ở bản tự host. Theo tài liệu OAuth 2.0 của Google, app OAuth loại External còn ở chế độ thử nghiệm chỉ cấp refresh token sống được một tuần. Qua mốc đó, n8n không xin được access token mới và workflow dừng ở node Google đầu tiên.

Vòng đời token khi app OAuth Google ở trạng thái Testing: ngày 0 kết nối thành công, ngày 1 đến 6 workflow chạy bình thường, ngày 7 refresh token hết hạn và node báo invalid_grant; cách sửa là Publish app sang In production trong Google Auth Platform rồi đăng nhập lại credential

Cách xử lý: đổi trạng thái app từ thử nghiệm sang chính thức ở mục Audience của Google, sau đó kết nối lại credential trong n8n một lần nữa. App dùng nội bộ với scope Sheets, Drive có thể gặp màn hình cảnh báo “Google chưa xác minh ứng dụng”; bấm Nâng cao để tiếp tục với tài khoản của chính bạn. Nếu tài khoản thuộc Google Workspace, chọn User type Internal cũng tránh được giới hạn 7 ngày.

Lỗi 404 Not Found khi đọc, ghi Google Sheets

Lỗi 404 nghĩa là n8n không tìm thấy file hoặc trang tính bạn chỉ định.

Node Append row in sheet trong n8n báo lỗi 404 The resource you are requesting could not be found, ô Document By URL (ID file đã che)

Nguyên nhân:

  • ID trang tính sao chép thiếu hoặc thừa ký tự.
  • File đã bị xóa (nằm trong thùng rác) hoặc tài khoản Google của credential không được chia sẻ file.

Cách xử lý: kiểm tra lại Spreadsheet ID (chuỗi nằm giữa /d/ và /edit trên URL), hoặc chọn file bằng From list thay vì dán URL. Mở file, bấm Share và kiểm tra email dùng cho credential có trong danh sách, tối thiểu quyền Viewer để đọc, Editor để ghi.

Dữ liệu không đồng bộ hoặc bị thiếu

Workflow chạy “thành công” nhưng dòng mới không xuất hiện, hoặc trigger không bắt được thay đổi.

Nguyên nhân:

  • Node Google Sheets Trigger kiểm tra thay đổi theo chu kỳ (polling, ví dụ mỗi phút), không tức thời; thay đổi xen giữa hai lần kiểm có thể gộp.
  • Filter hoặc If phía trước lọc mất item, hoặc node trước trả về rỗng.
  • Tên cột trong Sheet không khớp tên trường khi dùng chế độ map tự động.

Cách xử lý:

  • Dùng Google Sheets Trigger với sự kiện phù hợp (Row Added, Row Updated) và chấp nhận độ trễ của polling.
  • Cần tức thời: tạo Google Apps Script với trigger cài đặt (installable trigger) onEdit hoặc onChange, gọi tới node Webhook của n8n.
  • Thêm node Filter kiểm tra cột thay đổi (ví dụ cột A bằng “true”) trước khi ghi.
  • Chạy thủ công, xem output từng node để biết item mất ở đâu, xem cách đọc execution log.

Lỗi 429: vượt giới hạn API của Google

Lỗi “429 Too Many Requests” (Drive có thể trả 403 User rate limit exceeded) xảy ra khi workflow gọi API Google quá nhiều lần trong thời gian ngắn, thường do vòng lặp ghi từng dòng không có độ trễ hoặc nhiều workflow chạy cùng lúc.

APIGiới hạn mỗi phútKhi vượt
Google Sheets API300 request đọc và 300 request ghi cho mỗi project; 60 request đọc và 60 request ghi cho mỗi người dùng trong project429
Google Drive APITính theo quota unit: 1.000.000 unit cho mỗi project; 325.000 unit cho mỗi người dùng403 User rate limit exceeded hoặc 429
Quota theo Sheets API limits và Drive API limits (truy cập 22/10/2026)

Cách xử lý:

  • Gộp ghi: đưa cả mảng dòng vào một node Append, n8n gửi theo lô thay vì mỗi dòng một request.
  • Dùng Loop Over Items chia lô (ví dụ 50 dòng) và node Wait vài giây giữa các lô.
  • Bật Retry On Fail trong Settings của node Google Sheets, đặt thời gian chờ giữa các lần thử.
  • Giảm tần suất chạy (mỗi giờ thay vì mỗi phút) nếu dữ liệu không cần tức thời.
  • Xem mức dùng ở Google Cloud Console > APIs & Services > Quotas; quota mỗi phút không tăng bằng cách trả tiền, chỉ gửi yêu cầu tăng nếu thật cần.

Lỗi định dạng dữ liệu không khớp (type mismatch)

Dữ liệu sai kiểu (chuỗi “true” thay vì boolean, số dạng chữ) làm workflow lỗi hoặc ghi sai vào Sheet.

  • Kiểm tra kiểu dữ liệu trong panel INPUT/OUTPUT (biểu tượng cạnh tên trường: chữ cho string, số cho number).
  • Bật tùy chọn chuyển kiểu (Convert types where required) trong node If, Filter, hoặc đổi kiểu bằng Edit Fields.
  • Trong node Code: item.json.value = Boolean(item.json.value) hoặc Number(...).
  • Chạy thử với vài dòng mẫu trước khi chạy cả bảng.

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.

Những câu hỏi thường gặp

Có cần tạo credential riêng cho Google Sheets và Google Drive không?

Không bắt buộc. Credential Google OAuth2 API chung cấp đủ scope Sheets và Drive dùng được cho cả hai node. Nếu tạo credential riêng theo từng dịch vụ (Google Sheets OAuth2 API, Google Drive OAuth2 API), mỗi node dùng credential của nó.

Workflow chạy thành công nhưng không có dữ liệu ghi vào Google Sheets, vì sao?

Hai nguyên nhân hay gặp: dữ liệu vào node Google Sheets rỗng (xem output node ngay trước), hoặc tên cột trong Sheet không khớp tên trường khi map tự động. Dùng Edit Fields đặt đúng tên cột, hoặc chuyển sang Map Each Column Manually.

Giới hạn API của Google Sheets là bao nhiêu?

Theo trang giới hạn của Google (22/10/2026): 300 request đọc và 300 request ghi mỗi phút cho mỗi project, 60 request đọc và 60 request ghi mỗi phút cho mỗi người dùng. Gộp nhiều dòng vào một lần ghi để không chạm ngưỡng.

Làm sao workflow chạy mỗi khi có dòng mới trong Google Sheets?

Dùng node Google Sheets Trigger, sự kiện Row Added. Trigger này kiểm tra theo chu kỳ nên có độ trễ; cần tức thời thì dùng Apps Script gọi webhook n8n.

Làm sao tự động báo khi credential Google hết hạn hoặc lỗi?

Tạo một Error workflow bắt đầu bằng node Error Trigger, gửi tin Telegram hoặc email. Trong Settings của workflow chính, chọn Error workflow đó. Khi node Google lỗi (403, invalid_grant), bạn nhận cảnh báo ngay.

Đô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