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ỗi | Nguyên nhân thường gặp | Cá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 Cloud | Bậ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 users | Thê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ần | App OAuth ở Testing: refresh token hết hạn sau 7 ngày | Chuyển app sang In production rồi kết nối lại credential |
| redirect_uri_mismatch | URL callback trên Google Cloud khác OAuth Redirect URL trong n8n | Chép đúng URL n8n hiển thị (dạng /rest/oauth2-credential/callback) |
| Permission denied, Insufficient permissions | Bỏ sót quyền khi bấm Allow, hoặc tài khoản không có quyền sửa file | Kế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ẻ file | Kiểm tra ID giữa /d/ và /edit, kiểm tra Share |
| 429 Too Many Requests, 403 User rate limit exceeded | Vượt quota request mỗi phút | Gộ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ệu | Dữ liệu vào rỗng, sai sheet, tên cột không khớp | Xem output node trước, kiểm tra Mapping Column Mode |
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.

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.

- 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).

- 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”.

- Nếu bị Access blocked: thêm email vào Test users, hoặc vào Google Auth Platform > Audience bấm 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.

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.

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.
API Giới hạn mỗi phút Khi vượt Google Sheets API 300 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 project 429 Google Drive API Tính theo quota unit: 1.000.000 unit cho mỗi project; 325.000 unit cho mỗi người dùng 403 User rate limit exceeded hoặc 429
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ặcNumber(...). - 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.
