{"id":119270,"date":"2025-09-18T16:25:40","date_gmt":"2025-09-18T09:25:40","guid":{"rendered":"https:\/\/tino.vn\/blog\/?p=119270"},"modified":"2026-10-23T18:29:57","modified_gmt":"2026-10-23T11:29:57","slug":"sua-loi-tich-hop-google-sheet-drive-voi-n8n","status":"publish","type":"post","link":"https:\/\/tino.vn\/blog\/sua-loi-tich-hop-google-sheet-drive-voi-n8n\/","title":{"rendered":"S\u1eeda l\u1ed7i t\u00edch h\u1ee3p Google Sheets v\u00e0 Drive v\u1edbi n8n: 403, 404, 429, token 7 ng\u00e0y"},"content":{"rendered":"\n<p class=\"wp-block-paragraph\">L\u1ed7i Google Sheets v\u00e0 Google Drive trong n8n th\u01b0\u1eddng thu\u1ed9c b\u1ed1n nh\u00f3m: x\u00e1c th\u1ef1c OAuth (403, Access blocked, token h\u1ebft h\u1ea1n), quy\u1ec1n truy c\u1eadp file (404, Permission denied), v\u01b0\u1ee3t quota API (429) v\u00e0 sai c\u1ea5u h\u00ecnh node (sai sheet, sai c\u1ed9t). B\u1ea3ng d\u01b0\u1edbi \u0111\u00e2y cho bi\u1ebft th\u00f4ng b\u00e1o l\u1ed7i, nguy\u00ean nh\u00e2n v\u00e0 c\u00e1ch s\u1eeda nhanh cho t\u1eebng nh\u00f3m.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">B\u00e0i thu\u1ed9c nh\u00f3m b\u00e0i l\u1ed7i c\u1ee7a <a href=\"https:\/\/tino.vn\/blog\/n8n-la-gi\/\">n8n<\/a>; b\u1ea3ng m\u00e3 l\u1ed7i API chung n\u1eb1m \u1edf <a href=\"https:\/\/tino.vn\/blog\/loi-ket-noi-api-thuong-gap-trong-n8n\/\">l\u1ed7i k\u1ebft n\u1ed1i API th\u01b0\u1eddng g\u1eb7p trong n8n<\/a>. N\u1ebfu ch\u01b0a t\u1ea1o credential Google, l\u00e0m theo <a href=\"https:\/\/tino.vn\/blog\/cach-xac-thuc-credential-cho-google-tren-n8n\/\">c\u00e1ch x\u00e1c th\u1ef1c credential Google tr\u00ean n8n<\/a> tr\u01b0\u1edbc.<\/p>\n\n\n\n<h2 id=\"B\u1ea3ng_tra_nhanh_l\u1ed7i_Google_Sheets\/Drive_trong_n8n\">B\u1ea3ng tra nhanh l\u1ed7i Google Sheets\/Drive trong n8n<\/h2>\n\n\n\n<figure class=\"wp-block-table\"><table class=\"has-fixed-layout\"><thead><tr><th>Th\u00f4ng b\u00e1o l\u1ed7i<\/th><th>Nguy\u00ean nh\u00e2n th\u01b0\u1eddng g\u1eb7p<\/th><th>C\u00e1ch s\u1eeda<\/th><\/tr><\/thead><tbody><tr><td>403 &#8220;Forbidden &#8211; perhaps check your credentials?&#8221;, &#8220;&#8230; API has not been used in project&#8221;<\/td><td>Ch\u01b0a b\u1eadt Google Sheets API ho\u1eb7c Google Drive API trong project Google Cloud<\/td><td>B\u1eadt API trong Google Cloud Console, ch\u1edd v\u00e0i ph\u00fat, ch\u1ea1y l\u1ea1i<\/td><\/tr><tr><td>Error 403: access_denied, &#8220;Access blocked: &#8230; has not completed the Google verification process&#8221;<\/td><td>App OAuth t\u1ef1 t\u1ea1o \u0111ang \u1edf Testing v\u00e0 email ch\u01b0a c\u00f3 trong Test users<\/td><td>Th\u00eam email v\u00e0o Test users ho\u1eb7c Publish app<\/td><\/tr><tr><td>invalid_grant, ph\u1ea3i \u0111\u0103ng nh\u1eadp l\u1ea1i sau kho\u1ea3ng m\u1ed9t tu\u1ea7n<\/td><td>App OAuth \u1edf Testing: refresh token h\u1ebft h\u1ea1n sau 7 ng\u00e0y<\/td><td>Chuy\u1ec3n app sang In production r\u1ed3i k\u1ebft n\u1ed1i l\u1ea1i credential<\/td><\/tr><tr><td>redirect_uri_mismatch<\/td><td>URL callback tr\u00ean Google Cloud kh\u00e1c OAuth Redirect URL trong n8n<\/td><td>Ch\u00e9p \u0111\u00fang URL n8n hi\u1ec3n th\u1ecb (d\u1ea1ng \/rest\/oauth2-credential\/callback)<\/td><\/tr><tr><td>Permission denied, Insufficient permissions<\/td><td>B\u1ecf s\u00f3t quy\u1ec1n khi b\u1ea5m Allow, ho\u1eb7c t\u00e0i kho\u1ea3n kh\u00f4ng c\u00f3 quy\u1ec1n s\u1eeda file<\/td><td>K\u1ebft n\u1ed1i l\u1ea1i, t\u00edch \u0111\u1ee7 quy\u1ec1n; chia s\u1ebb file cho t\u00e0i kho\u1ea3n \u0111\u00f3 v\u1edbi quy\u1ec1n Editor<\/td><\/tr><tr><td>404 &#8220;The resource you are requesting could not be found&#8221;<\/td><td>Sai ID file, file \u0111\u00e3 x\u00f3a, ho\u1eb7c t\u00e0i kho\u1ea3n credential kh\u00f4ng \u0111\u01b0\u1ee3c chia s\u1ebb file<\/td><td>Ki\u1ec3m tra ID gi\u1eefa \/d\/ v\u00e0 \/edit, ki\u1ec3m tra Share<\/td><\/tr><tr><td>429 Too Many Requests, 403 User rate limit exceeded<\/td><td>V\u01b0\u1ee3t quota request m\u1ed7i ph\u00fat<\/td><td>G\u1ed9p d\u00f2ng, th\u00eam Wait, gi\u1ea3m t\u1ea7n su\u1ea5t; xem m\u1ee5c quota<\/td><\/tr><tr><td>Ch\u1ea1y th\u00e0nh c\u00f4ng nh\u01b0ng Sheet kh\u00f4ng c\u00f3 d\u1eef li\u1ec7u<\/td><td>D\u1eef li\u1ec7u v\u00e0o r\u1ed7ng, sai sheet, t\u00ean c\u1ed9t kh\u00f4ng kh\u1edbp<\/td><td>Xem output node tr\u01b0\u1edbc, ki\u1ec3m tra Mapping Column Mode<\/td><\/tr><\/tbody><\/table><figcaption class=\"wp-element-caption\">L\u1ed7i Google Sheets\/Drive hay g\u1eb7p trong n8n (\u0111\u1ed1i chi\u1ebfu docs Google v\u00e0 n8n, 22\/10\/2026)<\/figcaption><\/figure>\n\n\n\n<h2 id=\"Google_Sheets_v\u00e0_Drive_th\u01b0\u1eddng_d\u00f9ng_v\u00e0o_vi\u1ec7c_g\u00ec_trong_n8n?\">Google Sheets v\u00e0 Drive th\u01b0\u1eddng d\u00f9ng v\u00e0o vi\u1ec7c g\u00ec trong n8n?<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Bi\u1ebft workflow d\u00f9ng Google \u1edf vai tr\u00f2 n\u00e0o gi\u00fap \u0111o\u00e1n l\u1ed7i nhanh h\u01a1n: ghi nhi\u1ec1u d\u00f2ng d\u1ec5 v\u01b0\u1ee3t quota, \u0111\u1ecdc file c\u1ee7a ng\u01b0\u1eddi kh\u00e1c d\u1ec5 g\u1eb7p 404, chia s\u1ebb file c\u1ea7n quy\u1ec1n Drive \u0111\u1ea7y \u0111\u1ee7.<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong>Ghi d\u1eef li\u1ec7u (data logging):<\/strong> l\u01b0u lead t\u1eeb form, \u0111\u01a1n h\u00e0ng m\u1edbi t\u1eeb Shopify, WooCommerce, b\u00ecnh lu\u1eadn m\u1ea1ng x\u00e3 h\u1ed9i v\u00e0o Google Sheets.<\/li>\n\n\n<li><strong>L\u00e0m ngu\u1ed3n d\u1eef li\u1ec7u:<\/strong> \u0111\u1ecdc danh s\u00e1ch email \u0111\u1ec3 g\u1eedi th\u01b0 c\u00e1 nh\u00e2n h\u00f3a, \u0111\u1ecdc b\u1ea3ng gi\u00e1 \u0111\u1ec3 t\u1ea1o b\u00e1o gi\u00e1, \u0111\u1ed3ng b\u1ed9 danh b\u1ea1 v\u00e0o CRM.<\/li>\n\n\n<li><strong>Theo d\u00f5i tr\u1ea1ng th\u00e1i:<\/strong> t\u00ecm d\u00f2ng c\u1ee7a \u1ee9ng vi\u00ean ho\u1eb7c ticket v\u00e0 c\u1eadp nh\u1eadt c\u1ed9t &#8220;Tr\u1ea1ng th\u00e1i&#8221; khi h\u1ec7 th\u1ed1ng kh\u00e1c thay \u0111\u1ed5i.<\/li>\n\n\n<li><strong>B\u00e1o c\u00e1o \u0111\u01a1n gi\u1ea3n:<\/strong> cu\u1ed1i ng\u00e0y ghi t\u1ed5ng doanh thu, s\u1ed1 \u0111\u01a1n; m\u1ed7i s\u00e1ng k\u00e9o s\u1ed1 li\u1ec7u qu\u1ea3ng c\u00e1o v\u1ec1 m\u1ed9t trang t\u00ednh.<\/li>\n\n\n<li><strong>L\u01b0u v\u00e0 s\u1eafp x\u1ebfp file tr\u00ean Drive:<\/strong> l\u01b0u h\u00f3a \u0111\u01a1n \u0111\u00ednh k\u00e8m email theo t\u00ean chu\u1ea9n, t\u1ea1o b\u1ed9 th\u01b0 m\u1ee5c cho d\u1ef1 \u00e1n m\u1edbi, t\u1ea3i b\u1ea3n sao l\u01b0u l\u00ean Drive.<\/li>\n\n\n<li><strong>T\u1ea1o t\u00e0i li\u1ec7u v\u00e0 chia s\u1ebb:<\/strong> \u0111i\u1ec1n m\u1eabu Google Docs th\u00e0nh h\u1ee3p \u0111\u1ed3ng, b\u00e1o gi\u00e1 r\u1ed3i chia s\u1ebb quy\u1ec1n xem cho kh\u00e1ch.<\/li>\n<\/ul>\n\n\n\n<h2 id=\"V\u00ec_sao_n8n_b\u00e1o_403_Forbidden_khi_k\u1ebft_n\u1ed1i_Google?\">V\u00ec sao n8n b\u00e1o 403 Forbidden khi k\u1ebft n\u1ed1i Google?<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">n8n b\u00e1o &#8220;<strong>Forbidden &#8211; perhaps check your credentials?<\/strong>&#8221; (m\u00e3 403) khi Google t\u1eeb ch\u1ed1i y\u00eau c\u1ea7u c\u1ee7a credential. Ph\u1ea7n chi ti\u1ebft l\u1ed7i th\u01b0\u1eddng n\u00f3i r\u00f5 l\u00fd do; trong \u1ea3nh d\u01b0\u1edbi l\u00e0 Google Sheets API ch\u01b0a \u0111\u01b0\u1ee3c b\u1eadt trong project.<\/p>\n\n\n\n<figure class=\"wp-block-image size-full\"><img decoding=\"async\" width=\"1024\" height=\"622\" src=\"https:\/\/tino.vn\/blog\/wp-content\/uploads\/2026\/10\/sua-loi-tich-hop-google-sheet-drive-voi-n8n-sua-01.webp\" alt=\"Node Append row in sheet trong n8n b\u00e1o l\u1ed7i 403 Forbidden - perhaps check your credentials, ph\u1ea7n chi ti\u1ebft l\u1ed7i v\u1ec1 Google Sheets API ch\u01b0a b\u1eadt (m\u00e3 project \u0111\u00e3 che)\" class=\"wp-image-131688\" title=\"\" srcset=\"https:\/\/tino.vn\/blog\/wp-content\/uploads\/2026\/10\/sua-loi-tich-hop-google-sheet-drive-voi-n8n-sua-01.webp 1024w, https:\/\/tino.vn\/blog\/wp-content\/uploads\/2026\/10\/sua-loi-tich-hop-google-sheet-drive-voi-n8n-sua-01-300x182.webp 300w, https:\/\/tino.vn\/blog\/wp-content\/uploads\/2026\/10\/sua-loi-tich-hop-google-sheet-drive-voi-n8n-sua-01-768x467.webp 768w\" sizes=\"(max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>Nguy\u00ean nh\u00e2n:<\/strong><\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Ch\u01b0a b\u1eadt API t\u01b0\u01a1ng \u1ee9ng (Google Sheets API cho Sheets, Google Drive API cho Drive) trong project Google Cloud.<\/li>\n\n\n<li>Redirect URI sai, ho\u1eb7c email ch\u01b0a \u0111\u01b0\u1ee3c th\u00eam v\u00e0o Test users khi app OAuth c\u00f2n \u1edf Testing.<\/li>\n\n\n<li>Credential t\u1ea1o b\u1eb1ng t\u00e0i kho\u1ea3n Google kh\u00e1c v\u1edbi t\u00e0i kho\u1ea3n s\u1edf h\u1eefu project.<\/li>\n<\/ul>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>C\u00e1ch x\u1eed l\u00fd:<\/strong><\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>V\u00e0o Google Cloud Console > APIs &#038; Services > Library, t\u00ecm Google Sheets API (v\u00e0 Google Drive API), b\u1ea5m <strong>Enable<\/strong>. Ch\u1edd v\u00e0i ph\u00fat r\u1ed3i ch\u1ea1y l\u1ea1i node.<\/li>\n<\/ul>\n\n\n\n<figure class=\"wp-block-image size-full\"><img decoding=\"async\" width=\"1024\" height=\"599\" src=\"https:\/\/tino.vn\/blog\/wp-content\/uploads\/2025\/09\/2-1-1024x599.png\" alt=\"Trang Google Sheets API trong Google Cloud Console v\u1edbi n\u00fat Enable \u0111\u1ec3 b\u1eadt API\" class=\"wp-image-119275\" title=\"\" srcset=\"https:\/\/tino.vn\/blog\/wp-content\/uploads\/2025\/09\/2-1-1024x599.png 1024w, https:\/\/tino.vn\/blog\/wp-content\/uploads\/2025\/09\/2-1-300x176.png 300w, https:\/\/tino.vn\/blog\/wp-content\/uploads\/2025\/09\/2-1-768x449.png 768w, https:\/\/tino.vn\/blog\/wp-content\/uploads\/2025\/09\/2-1.png 1393w\" sizes=\"(max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Trong Google Auth Platform > Audience, n\u1ebfu Publishing status l\u00e0 Testing th\u00ec th\u00eam email c\u1ee7a b\u1ea1n v\u00e0o <strong>Test users<\/strong> (Add users).<\/li>\n<\/ul>\n\n\n\n<figure class=\"wp-block-image size-full\"><img decoding=\"async\" width=\"1024\" height=\"580\" src=\"https:\/\/tino.vn\/blog\/wp-content\/uploads\/2025\/09\/6-1024x580.png\" alt=\"M\u1ee5c Audience c\u1ee7a Google Auth Platform \u1edf tr\u1ea1ng th\u00e1i Testing, n\u00fat Add users \u0111\u1ec3 th\u00eam test user\" class=\"wp-image-119278\" title=\"\" srcset=\"https:\/\/tino.vn\/blog\/wp-content\/uploads\/2025\/09\/6-1024x580.png 1024w, https:\/\/tino.vn\/blog\/wp-content\/uploads\/2025\/09\/6-300x170.png 300w, https:\/\/tino.vn\/blog\/wp-content\/uploads\/2025\/09\/6-768x435.png 768w, https:\/\/tino.vn\/blog\/wp-content\/uploads\/2025\/09\/6-1536x869.png 1536w, https:\/\/tino.vn\/blog\/wp-content\/uploads\/2025\/09\/6.png 1592w\" sizes=\"(max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Ki\u1ec3m tra Authorized redirect URI tr\u00ean Google Cloud tr\u00f9ng v\u1edbi <strong>OAuth Redirect URL<\/strong> n8n hi\u1ec3n th\u1ecb trong credential, d\u1ea1ng <code>https:\/\/&lt;t\u00ean-mi\u1ec1n-n8n&gt;\/rest\/oauth2-credential\/callback<\/code>.<\/li>\n\n\n<li>T\u1ea1o l\u1ea1i credential trong n8n v\u00e0 b\u1ea5m Sign in with Google \u0111\u1ec3 x\u00e1c th\u1ef1c l\u1ea1i.<\/li>\n<\/ul>\n\n\n\n<h2 id=\"V\u00ec_sao_Google_b\u00e1o_&#8220;Access_blocked&#8221;_ho\u1eb7c_Permission_denied?\">V\u00ec sao Google b\u00e1o &#8220;Access blocked&#8221; ho\u1eb7c Permission denied?<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Th\u00f4ng b\u00e1o &#8220;Access blocked: &#8230; has not completed the Google verification process&#8221; (Error 403: access_denied) xu\u1ea5t hi\u1ec7n khi b\u1ea1n d\u00f9ng <strong>app OAuth t\u1ef1 t\u1ea1o<\/strong> ch\u01b0a publish v\u00e0 t\u00e0i kho\u1ea3n \u0111\u0103ng nh\u1eadp kh\u00f4ng n\u1eb1m trong Test users. Permission denied x\u1ea3y ra khi n8n l\u00e0m m\u1ed9t vi\u1ec7c (v\u00ed d\u1ee5 ghi d\u1eef li\u1ec7u, t\u1ea3i file l\u00ean) m\u00e0 b\u1ea1n ch\u01b0a c\u1ea5p quy\u1ec1n l\u00fac \u0111\u0103ng nh\u1eadp.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>Nguy\u00ean nh\u00e2n:<\/strong><\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>B\u1ecf s\u00f3t \u00f4 quy\u1ec1n khi Google h\u1ecfi (ch\u1ec9 c\u1ea5p quy\u1ec1n xem, kh\u00f4ng c\u1ea5p quy\u1ec1n s\u1eeda).<\/li>\n\n\n<li>T\u00e0i kho\u1ea3n Google \u0111\u0103ng nh\u1eadp \u1edf credential kh\u00e1c t\u00e0i kho\u1ea3n \u0111\u01b0\u1ee3c th\u00eam v\u00e0o Test users.<\/li>\n\n\n<li>App OAuth ch\u01b0a \u0111\u01b0\u1ee3c Google x\u00e1c minh m\u00e0 l\u1ea1i d\u00f9ng scope nh\u1ea1y c\u1ea3m cho ng\u01b0\u1eddi d\u00f9ng ngo\u00e0i.<\/li>\n<\/ul>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>C\u00e1ch x\u1eed l\u00fd:<\/strong><\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>B\u1ea5m <strong>Reconnect<\/strong> trong credential, \u1edf m\u00e0n h\u00ecnh ch\u1ecdn quy\u1ec1n t\u00edch \u0111\u1ee7 c\u00e1c \u00f4 nh\u01b0 &#8220;Xem, ch\u1ec9nh s\u1eeda, t\u1ea1o v\u00e0 x\u00f3a t\u1ea5t c\u1ea3 t\u1ec7p Google Drive c\u1ee7a b\u1ea1n&#8221; ho\u1eb7c &#8220;Xem v\u00e0 qu\u1ea3n l\u00fd b\u1ea3ng t\u00ednh Google Sheets&#8221;.<\/li>\n<\/ul>\n\n\n\n<figure class=\"wp-block-image size-full\"><img decoding=\"async\" width=\"1024\" height=\"620\" src=\"https:\/\/tino.vn\/blog\/wp-content\/uploads\/2026\/10\/sua-loi-tich-hop-google-sheet-drive-voi-n8n-sua-02.webp\" alt=\"M\u00e0n h\u00ecnh Google h\u1ecfi quy\u1ec1n khi k\u1ebft n\u1ed1i n8n v\u1edbi c\u00e1c \u00f4 Xem, ch\u1ec9nh s\u1eeda, t\u1ea1o v\u00e0 x\u00f3a t\u1ea5t c\u1ea3 t\u1ec7p Google Drive ch\u01b0a \u0111\u01b0\u1ee3c t\u00edch (t\u00ean mi\u1ec1n \u1ee9ng d\u1ee5ng \u0111\u00e3 che)\" class=\"wp-image-131689\" title=\"\" srcset=\"https:\/\/tino.vn\/blog\/wp-content\/uploads\/2026\/10\/sua-loi-tich-hop-google-sheet-drive-voi-n8n-sua-02.webp 1024w, https:\/\/tino.vn\/blog\/wp-content\/uploads\/2026\/10\/sua-loi-tich-hop-google-sheet-drive-voi-n8n-sua-02-300x182.webp 300w, https:\/\/tino.vn\/blog\/wp-content\/uploads\/2026\/10\/sua-loi-tich-hop-google-sheet-drive-voi-n8n-sua-02-768x465.webp 768w\" sizes=\"(max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n\n\n\n<ul class=\"wp-block-list\">\n<li>N\u1ebfu b\u1ecb Access blocked: th\u00eam email v\u00e0o Test users, ho\u1eb7c v\u00e0o Google Auth Platform > Audience b\u1ea5m <strong>Publish app<\/strong>.<\/li>\n<\/ul>\n\n\n\n<figure class=\"wp-block-image size-full\"><img decoding=\"async\" width=\"1024\" height=\"529\" src=\"https:\/\/tino.vn\/blog\/wp-content\/uploads\/2025\/09\/3-2-1024x529.png\" alt=\"M\u1ee5c Audience trong Google Auth Platform, Publishing status Testing v\u00e0 n\u00fat Publish app\" class=\"wp-image-119274\" title=\"\" srcset=\"https:\/\/tino.vn\/blog\/wp-content\/uploads\/2025\/09\/3-2-1024x529.png 1024w, https:\/\/tino.vn\/blog\/wp-content\/uploads\/2025\/09\/3-2-300x155.png 300w, https:\/\/tino.vn\/blog\/wp-content\/uploads\/2025\/09\/3-2-768x397.png 768w, https:\/\/tino.vn\/blog\/wp-content\/uploads\/2025\/09\/3-2.png 1479w\" sizes=\"(max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Tr\u00ean n8n Cloud, nhi\u1ec1u node Google c\u00f3 n\u00fat <strong>Sign in with Google<\/strong> d\u00f9ng app OAuth \u0111\u00e3 \u0111\u01b0\u1ee3c x\u00e1c minh c\u1ee7a n8n, kh\u00f4ng c\u1ea7n t\u1ef1 t\u1ea1o app; l\u1ed7i Access blocked ch\u1ec9 g\u1eb7p khi b\u1ea1n t\u1ef1 t\u1ea1o app (<a href=\"https:\/\/docs.n8n.io\/integrations\/builtin\/credentials\/google\/oauth-single-service\/\" target=\"_blank\" rel=\"noopener nofollow\">docs n8n: Google OAuth2 single service<\/a>).<\/li>\n<\/ul>\n\n\n\n<h2 id=\"V\u00ec_sao_credential_Google_ph\u1ea3i_\u0111\u0103ng_nh\u1eadp_l\u1ea1i_sau_7_ng\u00e0y?\">V\u00ec sao credential Google ph\u1ea3i \u0111\u0103ng nh\u1eadp l\u1ea1i sau 7 ng\u00e0y?<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">\u0110\u00e2y l\u00e0 l\u1ed7i hay g\u1eb7p nh\u1ea5t \u1edf b\u1ea3n t\u1ef1 host. Theo <a href=\"https:\/\/developers.google.com\/identity\/protocols\/oauth2#expiration\" target=\"_blank\" rel=\"noopener nofollow\">t\u00e0i li\u1ec7u OAuth 2.0 c\u1ee7a Google<\/a>, app OAuth lo\u1ea1i External c\u00f2n \u1edf ch\u1ebf \u0111\u1ed9 th\u1eed nghi\u1ec7m ch\u1ec9 c\u1ea5p refresh token s\u1ed1ng \u0111\u01b0\u1ee3c m\u1ed9t tu\u1ea7n. Qua m\u1ed1c \u0111\u00f3, n8n kh\u00f4ng xin \u0111\u01b0\u1ee3c access token m\u1edbi v\u00e0 workflow d\u1eebng \u1edf node Google \u0111\u1ea7u ti\u00ean.<\/p>\n\n\n\n<figure class=\"wp-block-image size-full\"><img decoding=\"async\" width=\"1400\" height=\"750\" src=\"https:\/\/tino.vn\/blog\/wp-content\/uploads\/2026\/10\/sua-loi-tich-hop-google-sheet-drive-voi-n8n-token-7-ngay.webp\" alt=\"V\u00f2ng \u0111\u1eddi token khi app OAuth Google \u1edf tr\u1ea1ng th\u00e1i Testing: ng\u00e0y 0 k\u1ebft n\u1ed1i th\u00e0nh c\u00f4ng, ng\u00e0y 1 \u0111\u1ebfn 6 workflow ch\u1ea1y b\u00ecnh th\u01b0\u1eddng, ng\u00e0y 7 refresh token h\u1ebft h\u1ea1n v\u00e0 node b\u00e1o invalid_grant; c\u00e1ch s\u1eeda l\u00e0 Publish app sang In production trong Google Auth Platform r\u1ed3i \u0111\u0103ng nh\u1eadp l\u1ea1i credential\" class=\"wp-image-131691\" title=\"\" srcset=\"https:\/\/tino.vn\/blog\/wp-content\/uploads\/2026\/10\/sua-loi-tich-hop-google-sheet-drive-voi-n8n-token-7-ngay.webp 1400w, https:\/\/tino.vn\/blog\/wp-content\/uploads\/2026\/10\/sua-loi-tich-hop-google-sheet-drive-voi-n8n-token-7-ngay-300x161.webp 300w, https:\/\/tino.vn\/blog\/wp-content\/uploads\/2026\/10\/sua-loi-tich-hop-google-sheet-drive-voi-n8n-token-7-ngay-1024x549.webp 1024w, https:\/\/tino.vn\/blog\/wp-content\/uploads\/2026\/10\/sua-loi-tich-hop-google-sheet-drive-voi-n8n-token-7-ngay-768x411.webp 768w\" sizes=\"(max-width: 1400px) 100vw, 1400px\" \/><\/figure>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>C\u00e1ch x\u1eed l\u00fd:<\/strong> \u0111\u1ed5i tr\u1ea1ng th\u00e1i app t\u1eeb th\u1eed nghi\u1ec7m sang ch\u00ednh th\u1ee9c \u1edf m\u1ee5c Audience c\u1ee7a Google, sau \u0111\u00f3 k\u1ebft n\u1ed1i l\u1ea1i credential trong n8n m\u1ed9t l\u1ea7n n\u1eefa. App d\u00f9ng n\u1ed9i b\u1ed9 v\u1edbi scope Sheets, Drive c\u00f3 th\u1ec3 g\u1eb7p m\u00e0n h\u00ecnh c\u1ea3nh b\u00e1o &#8220;Google ch\u01b0a x\u00e1c minh \u1ee9ng d\u1ee5ng&#8221;; b\u1ea5m N\u00e2ng cao \u0111\u1ec3 ti\u1ebfp t\u1ee5c v\u1edbi t\u00e0i kho\u1ea3n c\u1ee7a ch\u00ednh b\u1ea1n. N\u1ebfu t\u00e0i kho\u1ea3n thu\u1ed9c Google Workspace, ch\u1ecdn User type Internal c\u0169ng tr\u00e1nh \u0111\u01b0\u1ee3c gi\u1edbi h\u1ea1n 7 ng\u00e0y.<\/p>\n\n\n\n<h2 id=\"L\u1ed7i_404_Not_Found_khi_\u0111\u1ecdc,_ghi_Google_Sheets\">L\u1ed7i 404 Not Found khi \u0111\u1ecdc, ghi Google Sheets<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">L\u1ed7i 404 ngh\u0129a l\u00e0 n8n kh\u00f4ng t\u00ecm th\u1ea5y file ho\u1eb7c trang t\u00ednh b\u1ea1n ch\u1ec9 \u0111\u1ecbnh.<\/p>\n\n\n\n<figure class=\"wp-block-image size-full\"><img decoding=\"async\" width=\"1024\" height=\"619\" src=\"https:\/\/tino.vn\/blog\/wp-content\/uploads\/2026\/10\/sua-loi-tich-hop-google-sheet-drive-voi-n8n-sua-03.webp\" alt=\"Node Append row in sheet trong n8n b\u00e1o l\u1ed7i 404 The resource you are requesting could not be found, \u00f4 Document By URL (ID file \u0111\u00e3 che)\" class=\"wp-image-131690\" title=\"\" srcset=\"https:\/\/tino.vn\/blog\/wp-content\/uploads\/2026\/10\/sua-loi-tich-hop-google-sheet-drive-voi-n8n-sua-03.webp 1024w, https:\/\/tino.vn\/blog\/wp-content\/uploads\/2026\/10\/sua-loi-tich-hop-google-sheet-drive-voi-n8n-sua-03-300x181.webp 300w, https:\/\/tino.vn\/blog\/wp-content\/uploads\/2026\/10\/sua-loi-tich-hop-google-sheet-drive-voi-n8n-sua-03-768x464.webp 768w\" sizes=\"(max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>Nguy\u00ean nh\u00e2n:<\/strong><\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>ID trang t\u00ednh sao ch\u00e9p thi\u1ebfu ho\u1eb7c th\u1eeba k\u00fd t\u1ef1.<\/li>\n\n\n<li>File \u0111\u00e3 b\u1ecb x\u00f3a (n\u1eb1m trong th\u00f9ng r\u00e1c) ho\u1eb7c t\u00e0i kho\u1ea3n Google c\u1ee7a credential kh\u00f4ng \u0111\u01b0\u1ee3c chia s\u1ebb file.<\/li>\n<\/ul>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>C\u00e1ch x\u1eed l\u00fd:<\/strong> ki\u1ec3m tra l\u1ea1i Spreadsheet ID (chu\u1ed7i n\u1eb1m gi\u1eefa <code>\/d\/<\/code> v\u00e0 <code>\/edit<\/code> tr\u00ean URL), ho\u1eb7c ch\u1ecdn file b\u1eb1ng From list thay v\u00ec d\u00e1n URL. M\u1edf file, b\u1ea5m <strong>Share<\/strong> v\u00e0 ki\u1ec3m tra email d\u00f9ng cho credential c\u00f3 trong danh s\u00e1ch, t\u1ed1i thi\u1ec3u quy\u1ec1n Viewer \u0111\u1ec3 \u0111\u1ecdc, Editor \u0111\u1ec3 ghi.<\/p>\n\n\n\n<h2 id=\"D\u1eef_li\u1ec7u_kh\u00f4ng_\u0111\u1ed3ng_b\u1ed9_ho\u1eb7c_b\u1ecb_thi\u1ebfu\">D\u1eef li\u1ec7u kh\u00f4ng \u0111\u1ed3ng b\u1ed9 ho\u1eb7c b\u1ecb thi\u1ebfu<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Workflow ch\u1ea1y &#8220;th\u00e0nh c\u00f4ng&#8221; nh\u01b0ng d\u00f2ng m\u1edbi kh\u00f4ng xu\u1ea5t hi\u1ec7n, ho\u1eb7c trigger kh\u00f4ng b\u1eaft \u0111\u01b0\u1ee3c thay \u0111\u1ed5i.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>Nguy\u00ean nh\u00e2n:<\/strong><\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Node Google Sheets Trigger ki\u1ec3m tra thay \u0111\u1ed5i theo chu k\u1ef3 (polling, v\u00ed d\u1ee5 m\u1ed7i ph\u00fat), kh\u00f4ng t\u1ee9c th\u1eddi; thay \u0111\u1ed5i xen gi\u1eefa hai l\u1ea7n ki\u1ec3m c\u00f3 th\u1ec3 g\u1ed9p.<\/li>\n\n\n<li>Filter ho\u1eb7c If ph\u00eda tr\u01b0\u1edbc l\u1ecdc m\u1ea5t item, ho\u1eb7c node tr\u01b0\u1edbc tr\u1ea3 v\u1ec1 r\u1ed7ng.<\/li>\n\n\n<li>T\u00ean c\u1ed9t trong Sheet kh\u00f4ng kh\u1edbp t\u00ean tr\u01b0\u1eddng khi d\u00f9ng ch\u1ebf \u0111\u1ed9 map t\u1ef1 \u0111\u1ed9ng.<\/li>\n<\/ul>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>C\u00e1ch x\u1eed l\u00fd:<\/strong><\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>D\u00f9ng Google Sheets Trigger v\u1edbi s\u1ef1 ki\u1ec7n ph\u00f9 h\u1ee3p (Row Added, Row Updated) v\u00e0 ch\u1ea5p nh\u1eadn \u0111\u1ed9 tr\u1ec5 c\u1ee7a polling.<\/li>\n\n\n<li>C\u1ea7n t\u1ee9c th\u1eddi: t\u1ea1o Google Apps Script v\u1edbi trigger c\u00e0i \u0111\u1eb7t (installable trigger) onEdit ho\u1eb7c onChange, g\u1ecdi t\u1edbi <a href=\"https:\/\/tino.vn\/blog\/node-webhook-trong-n8n\/\">node Webhook<\/a> c\u1ee7a n8n.<\/li>\n\n\n<li>Th\u00eam node Filter ki\u1ec3m tra c\u1ed9t thay \u0111\u1ed5i (v\u00ed d\u1ee5 c\u1ed9t A b\u1eb1ng &#8220;true&#8221;) tr\u01b0\u1edbc khi ghi.<\/li>\n\n\n<li>Ch\u1ea1y th\u1ee7 c\u00f4ng, xem output t\u1eebng node \u0111\u1ec3 bi\u1ebft item m\u1ea5t \u1edf \u0111\u00e2u, xem <a href=\"https:\/\/tino.vn\/blog\/cach-doc-va-hieu-execution-log-trong-n8n\/\">c\u00e1ch \u0111\u1ecdc execution log<\/a>.<\/li>\n<\/ul>\n\n\n\n<h2 id=\"L\u1ed7i_429:_v\u01b0\u1ee3t_gi\u1edbi_h\u1ea1n_API_c\u1ee7a_Google\">L\u1ed7i 429: v\u01b0\u1ee3t gi\u1edbi h\u1ea1n API c\u1ee7a Google<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">L\u1ed7i &#8220;429 Too Many Requests&#8221; (Drive c\u00f3 th\u1ec3 tr\u1ea3 403 User rate limit exceeded) x\u1ea3y ra khi workflow g\u1ecdi API Google qu\u00e1 nhi\u1ec1u l\u1ea7n trong th\u1eddi gian ng\u1eafn, th\u01b0\u1eddng do v\u00f2ng l\u1eb7p ghi t\u1eebng d\u00f2ng kh\u00f4ng c\u00f3 \u0111\u1ed9 tr\u1ec5 ho\u1eb7c nhi\u1ec1u workflow ch\u1ea1y c\u00f9ng l\u00fac.<\/p>\n\n\n\n<figure class=\"wp-block-table\"><table class=\"has-fixed-layout\"><thead><tr><th>API<\/th><th>Gi\u1edbi h\u1ea1n m\u1ed7i ph\u00fat<\/th><th>Khi v\u01b0\u1ee3t<\/th><\/tr><\/thead><tbody><tr><td>Google Sheets API<\/td><td>300 request \u0111\u1ecdc v\u00e0 300 request ghi cho m\u1ed7i project; 60 request \u0111\u1ecdc v\u00e0 60 request ghi cho m\u1ed7i ng\u01b0\u1eddi d\u00f9ng trong project<\/td><td>429<\/td><\/tr><tr><td>Google Drive API<\/td><td>T\u00ednh theo quota unit: 1.000.000 unit cho m\u1ed7i project; 325.000 unit cho m\u1ed7i ng\u01b0\u1eddi d\u00f9ng<\/td><td>403 User rate limit exceeded ho\u1eb7c 429<\/td><\/tr><\/tbody><\/table><figcaption class=\"wp-element-caption\">Quota theo <a href=\"https:\/\/developers.google.com\/workspace\/sheets\/api\/limits\" target=\"_blank\" rel=\"noopener nofollow\">Sheets API limits<\/a> v\u00e0 <a href=\"https:\/\/developers.google.com\/workspace\/drive\/api\/guides\/limits\" target=\"_blank\" rel=\"noopener nofollow\">Drive API limits<\/a> (truy c\u1eadp 22\/10\/2026)<\/figcaption><\/figure>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>C\u00e1ch x\u1eed l\u00fd:<\/strong><\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>G\u1ed9p ghi: \u0111\u01b0a c\u1ea3 m\u1ea3ng d\u00f2ng v\u00e0o m\u1ed9t node Append, n8n g\u1eedi theo l\u00f4 thay v\u00ec m\u1ed7i d\u00f2ng m\u1ed9t request.<\/li>\n\n\n<li>D\u00f9ng Loop Over Items chia l\u00f4 (v\u00ed d\u1ee5 50 d\u00f2ng) v\u00e0 node Wait v\u00e0i gi\u00e2y gi\u1eefa c\u00e1c l\u00f4.<\/li>\n\n\n<li>B\u1eadt Retry On Fail trong Settings c\u1ee7a node Google Sheets, \u0111\u1eb7t th\u1eddi gian ch\u1edd gi\u1eefa c\u00e1c l\u1ea7n th\u1eed.<\/li>\n\n\n<li>Gi\u1ea3m t\u1ea7n su\u1ea5t ch\u1ea1y (m\u1ed7i gi\u1edd thay v\u00ec m\u1ed7i ph\u00fat) n\u1ebfu d\u1eef li\u1ec7u kh\u00f4ng c\u1ea7n t\u1ee9c th\u1eddi.<\/li>\n\n\n<li>Xem m\u1ee9c d\u00f9ng \u1edf Google Cloud Console > APIs &#038; Services > Quotas; quota m\u1ed7i ph\u00fat kh\u00f4ng t\u0103ng b\u1eb1ng c\u00e1ch tr\u1ea3 ti\u1ec1n, ch\u1ec9 g\u1eedi y\u00eau c\u1ea7u t\u0103ng n\u1ebfu th\u1eadt c\u1ea7n.<\/li>\n<\/ul>\n\n\n\n<h2 id=\"L\u1ed7i_\u0111\u1ecbnh_d\u1ea1ng_d\u1eef_li\u1ec7u_kh\u00f4ng_kh\u1edbp_(type_mismatch)\">L\u1ed7i \u0111\u1ecbnh d\u1ea1ng d\u1eef li\u1ec7u kh\u00f4ng kh\u1edbp (type mismatch)<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">D\u1eef li\u1ec7u sai ki\u1ec3u (chu\u1ed7i &#8220;true&#8221; thay v\u00ec boolean, s\u1ed1 d\u1ea1ng ch\u1eef) l\u00e0m workflow l\u1ed7i ho\u1eb7c ghi sai v\u00e0o Sheet.<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Ki\u1ec3m tra ki\u1ec3u d\u1eef li\u1ec7u trong panel INPUT\/OUTPUT (bi\u1ec3u t\u01b0\u1ee3ng c\u1ea1nh t\u00ean tr\u01b0\u1eddng: ch\u1eef cho string, s\u1ed1 cho number).<\/li>\n\n\n<li>B\u1eadt t\u00f9y ch\u1ecdn chuy\u1ec3n ki\u1ec3u (Convert types where required) trong node If, Filter, ho\u1eb7c \u0111\u1ed5i ki\u1ec3u b\u1eb1ng Edit Fields.<\/li>\n\n\n<li>Trong node Code: <code>item.json.value = Boolean(item.json.value)<\/code> ho\u1eb7c <code>Number(...)<\/code>.<\/li>\n\n\n<li>Ch\u1ea1y th\u1eed v\u1edbi v\u00e0i d\u00f2ng m\u1eabu tr\u01b0\u1edbc khi ch\u1ea1y c\u1ea3 b\u1ea3ng.<\/li>\n<\/ul>\n\n\n\n<p class=\"wp-block-paragraph\">Mu\u1ed1n ch\u1ea1y n8n 24\/7 m\u00e0 kh\u00f4ng t\u1ef1 c\u00e0i? <a href=\"https:\/\/tino.vn\/vps-n8n\">VPS n8n c\u1ee7a Tino<\/a> c\u00e0i s\u1eb5n n8n tr\u00ean VPS NVMe \u0111\u1eb7t t\u1ea1i Vi\u1ec7t Nam; b\u1ea1n v\u1eabn c\u00f3 quy\u1ec1n root \u0111\u1ec3 c\u1ea5u h\u00ecnh. Xem c\u1ea5u h\u00ecnh v\u00e0 gi\u00e1 tr\u00ean trang s\u1ea3n ph\u1ea9m.<\/p>\n\n\n\n<h2 id=\"Nh\u1eefng_c\u00e2u_h\u1ecfi_th\u01b0\u1eddng_g\u1eb7p\">Nh\u1eefng c\u00e2u h\u1ecfi th\u01b0\u1eddng g\u1eb7p<\/h2>\n\n\n\t\t<section\t\thelp class=\"sc_fs_faq sc_card    \"\n\t\t\t\t>\n\t\t\t\t<h2 id=\"C\u00f3_c\u1ea7n_t\u1ea1o_credential_ri\u00eang_cho_Google_Sheets_v\u00e0_Google_Drive_kh\u00f4ng?\">C\u00f3 c\u1ea7n t\u1ea1o credential ri\u00eang cho Google Sheets v\u00e0 Google Drive kh\u00f4ng?<\/h2>\t\t\t\t<div>\n\t\t\t\t\t\t<div class=\"sc_fs_faq__content\">\n\t\t\t\t\n\n<p class=\"wp-block-paragraph\">Kh\u00f4ng b\u1eaft bu\u1ed9c. Credential Google OAuth2 API chung c\u1ea5p \u0111\u1ee7 scope Sheets v\u00e0 Drive d\u00f9ng \u0111\u01b0\u1ee3c cho c\u1ea3 hai node. N\u1ebfu t\u1ea1o credential ri\u00eang theo t\u1eebng d\u1ecbch v\u1ee5 (Google Sheets OAuth2 API, Google Drive OAuth2 API), m\u1ed7i node d\u00f9ng credential c\u1ee7a n\u00f3.<\/p>\n\n\t\t\t<\/div>\n\t\t<\/div>\n\t\t<\/section>\n\t\t\t\t<section\t\thelp class=\"sc_fs_faq sc_card    \"\n\t\t\t\t>\n\t\t\t\t<h2 id=\"Workflow_ch\u1ea1y_th\u00e0nh_c\u00f4ng_nh\u01b0ng_kh\u00f4ng_c\u00f3_d\u1eef_li\u1ec7u_ghi_v\u00e0o_Google_Sheets,_v\u00ec_sao?\">Workflow ch\u1ea1y th\u00e0nh c\u00f4ng nh\u01b0ng kh\u00f4ng c\u00f3 d\u1eef li\u1ec7u ghi v\u00e0o Google Sheets, v\u00ec sao?<\/h2>\t\t\t\t<div>\n\t\t\t\t\t\t<div class=\"sc_fs_faq__content\">\n\t\t\t\t\n\n<p class=\"wp-block-paragraph\">Hai nguy\u00ean nh\u00e2n hay g\u1eb7p: d\u1eef li\u1ec7u v\u00e0o node Google Sheets r\u1ed7ng (xem output node ngay tr\u01b0\u1edbc), ho\u1eb7c t\u00ean c\u1ed9t trong Sheet kh\u00f4ng kh\u1edbp t\u00ean tr\u01b0\u1eddng khi map t\u1ef1 \u0111\u1ed9ng. D\u00f9ng Edit Fields \u0111\u1eb7t \u0111\u00fang t\u00ean c\u1ed9t, ho\u1eb7c chuy\u1ec3n sang Map Each Column Manually.<\/p>\n\n\t\t\t<\/div>\n\t\t<\/div>\n\t\t<\/section>\n\t\t\t\t<section\t\thelp class=\"sc_fs_faq sc_card    \"\n\t\t\t\t>\n\t\t\t\t<h2 id=\"Gi\u1edbi_h\u1ea1n_API_c\u1ee7a_Google_Sheets_l\u00e0_bao_nhi\u00eau?\">Gi\u1edbi h\u1ea1n API c\u1ee7a Google Sheets l\u00e0 bao nhi\u00eau?<\/h2>\t\t\t\t<div>\n\t\t\t\t\t\t<div class=\"sc_fs_faq__content\">\n\t\t\t\t\n\n<p class=\"wp-block-paragraph\">Theo trang gi\u1edbi h\u1ea1n c\u1ee7a Google (22\/10\/2026): 300 request \u0111\u1ecdc v\u00e0 300 request ghi m\u1ed7i ph\u00fat cho m\u1ed7i project, 60 request \u0111\u1ecdc v\u00e0 60 request ghi m\u1ed7i ph\u00fat cho m\u1ed7i ng\u01b0\u1eddi d\u00f9ng. G\u1ed9p nhi\u1ec1u d\u00f2ng v\u00e0o m\u1ed9t l\u1ea7n ghi \u0111\u1ec3 kh\u00f4ng ch\u1ea1m ng\u01b0\u1ee1ng.<\/p>\n\n\t\t\t<\/div>\n\t\t<\/div>\n\t\t<\/section>\n\t\t\t\t<section\t\thelp class=\"sc_fs_faq sc_card    \"\n\t\t\t\t>\n\t\t\t\t<h2 id=\"L\u00e0m_sao_workflow_ch\u1ea1y_m\u1ed7i_khi_c\u00f3_d\u00f2ng_m\u1edbi_trong_Google_Sheets?\">L\u00e0m sao workflow ch\u1ea1y m\u1ed7i khi c\u00f3 d\u00f2ng m\u1edbi trong Google Sheets?<\/h2>\t\t\t\t<div>\n\t\t\t\t\t\t<div class=\"sc_fs_faq__content\">\n\t\t\t\t\n\n<p class=\"wp-block-paragraph\">D\u00f9ng node Google Sheets Trigger, s\u1ef1 ki\u1ec7n Row Added. Trigger n\u00e0y ki\u1ec3m tra theo chu k\u1ef3 n\u00ean c\u00f3 \u0111\u1ed9 tr\u1ec5; c\u1ea7n t\u1ee9c th\u1eddi th\u00ec d\u00f9ng Apps Script g\u1ecdi webhook n8n.<\/p>\n\n\t\t\t<\/div>\n\t\t<\/div>\n\t\t<\/section>\n\t\t\t\t<section\t\thelp class=\"sc_fs_faq sc_card    \"\n\t\t\t\t>\n\t\t\t\t<h2 id=\"L\u00e0m_sao_t\u1ef1_\u0111\u1ed9ng_b\u00e1o_khi_credential_Google_h\u1ebft_h\u1ea1n_ho\u1eb7c_l\u1ed7i?\">L\u00e0m sao t\u1ef1 \u0111\u1ed9ng b\u00e1o khi credential Google h\u1ebft h\u1ea1n ho\u1eb7c l\u1ed7i?<\/h2>\t\t\t\t<div>\n\t\t\t\t\t\t<div class=\"sc_fs_faq__content\">\n\t\t\t\t\n\n<p class=\"wp-block-paragraph\">T\u1ea1o m\u1ed9t Error workflow b\u1eaft \u0111\u1ea7u b\u1eb1ng node Error Trigger, g\u1eedi tin Telegram ho\u1eb7c email. Trong Settings c\u1ee7a workflow ch\u00ednh, ch\u1ecdn Error workflow \u0111\u00f3. Khi node Google l\u1ed7i (403, invalid_grant), b\u1ea1n nh\u1eadn c\u1ea3nh b\u00e1o ngay.<\/p>\n\n\t\t\t<\/div>\n\t\t<\/div>\n\t\t<\/section>\n\t\t\n<script type=\"application\/ld+json\">\n\t{\n\t\t\"@context\": \"https:\/\/schema.org\",\n\t\t\"@type\": \"FAQPage\",\n\t\t\"mainEntity\": [\n\t\t\t\t\t{\n\t\t\t\t\"@type\": \"Question\",\n\t\t\t\t\"name\": \"C\u00f3 c\u1ea7n t\u1ea1o credential ri\u00eang cho Google Sheets v\u00e0 Google Drive kh\u00f4ng?\",\n\t\t\t\t\"acceptedAnswer\": {\n\t\t\t\t\t\"@type\": \"Answer\",\n\t\t\t\t\t\"text\": \"<p>Kh\u00f4ng b\u1eaft bu\u1ed9c. Credential Google OAuth2 API chung c\u1ea5p \u0111\u1ee7 scope Sheets v\u00e0 Drive d\u00f9ng \u0111\u01b0\u1ee3c cho c\u1ea3 hai node. N\u1ebfu t\u1ea1o credential ri\u00eang theo t\u1eebng d\u1ecbch v\u1ee5 (Google Sheets OAuth2 API, Google Drive OAuth2 API), m\u1ed7i node d\u00f9ng credential c\u1ee7a n\u00f3.<\/p>\"\n\t\t\t\t\t\t\t\t\t}\n\t\t\t}\n\t\t\t,\t\t\t\t{\n\t\t\t\t\"@type\": \"Question\",\n\t\t\t\t\"name\": \"Workflow ch\u1ea1y th\u00e0nh c\u00f4ng nh\u01b0ng kh\u00f4ng c\u00f3 d\u1eef li\u1ec7u ghi v\u00e0o Google Sheets, v\u00ec sao?\",\n\t\t\t\t\"acceptedAnswer\": {\n\t\t\t\t\t\"@type\": \"Answer\",\n\t\t\t\t\t\"text\": \"<p>Hai nguy\u00ean nh\u00e2n hay g\u1eb7p: d\u1eef li\u1ec7u v\u00e0o node Google Sheets r\u1ed7ng (xem output node ngay tr\u01b0\u1edbc), ho\u1eb7c t\u00ean c\u1ed9t trong Sheet kh\u00f4ng kh\u1edbp t\u00ean tr\u01b0\u1eddng khi map t\u1ef1 \u0111\u1ed9ng. D\u00f9ng Edit Fields \u0111\u1eb7t \u0111\u00fang t\u00ean c\u1ed9t, ho\u1eb7c chuy\u1ec3n sang Map Each Column Manually.<\/p>\"\n\t\t\t\t\t\t\t\t\t}\n\t\t\t}\n\t\t\t,\t\t\t\t{\n\t\t\t\t\"@type\": \"Question\",\n\t\t\t\t\"name\": \"Gi\u1edbi h\u1ea1n API c\u1ee7a Google Sheets l\u00e0 bao nhi\u00eau?\",\n\t\t\t\t\"acceptedAnswer\": {\n\t\t\t\t\t\"@type\": \"Answer\",\n\t\t\t\t\t\"text\": \"<p>Theo trang gi\u1edbi h\u1ea1n c\u1ee7a Google (22\/10\/2026): 300 request \u0111\u1ecdc v\u00e0 300 request ghi m\u1ed7i ph\u00fat cho m\u1ed7i project, 60 request \u0111\u1ecdc v\u00e0 60 request ghi m\u1ed7i ph\u00fat cho m\u1ed7i ng\u01b0\u1eddi d\u00f9ng. G\u1ed9p nhi\u1ec1u d\u00f2ng v\u00e0o m\u1ed9t l\u1ea7n ghi \u0111\u1ec3 kh\u00f4ng ch\u1ea1m ng\u01b0\u1ee1ng.<\/p>\"\n\t\t\t\t\t\t\t\t\t}\n\t\t\t}\n\t\t\t,\t\t\t\t{\n\t\t\t\t\"@type\": \"Question\",\n\t\t\t\t\"name\": \"L\u00e0m sao workflow ch\u1ea1y m\u1ed7i khi c\u00f3 d\u00f2ng m\u1edbi trong Google Sheets?\",\n\t\t\t\t\"acceptedAnswer\": {\n\t\t\t\t\t\"@type\": \"Answer\",\n\t\t\t\t\t\"text\": \"<p>D\u00f9ng node Google Sheets Trigger, s\u1ef1 ki\u1ec7n Row Added. Trigger n\u00e0y ki\u1ec3m tra theo chu k\u1ef3 n\u00ean c\u00f3 \u0111\u1ed9 tr\u1ec5; c\u1ea7n t\u1ee9c th\u1eddi th\u00ec d\u00f9ng Apps Script g\u1ecdi webhook n8n.<\/p>\"\n\t\t\t\t\t\t\t\t\t}\n\t\t\t}\n\t\t\t,\t\t\t\t{\n\t\t\t\t\"@type\": \"Question\",\n\t\t\t\t\"name\": \"L\u00e0m sao t\u1ef1 \u0111\u1ed9ng b\u00e1o khi credential Google h\u1ebft h\u1ea1n ho\u1eb7c l\u1ed7i?\",\n\t\t\t\t\"acceptedAnswer\": {\n\t\t\t\t\t\"@type\": \"Answer\",\n\t\t\t\t\t\"text\": \"<p>T\u1ea1o m\u1ed9t Error workflow b\u1eaft \u0111\u1ea7u b\u1eb1ng node Error Trigger, g\u1eedi tin Telegram ho\u1eb7c email. Trong Settings c\u1ee7a workflow ch\u00ednh, ch\u1ecdn Error workflow \u0111\u00f3. Khi node Google l\u1ed7i (403, invalid_grant), b\u1ea1n nh\u1eadn c\u1ea3nh b\u00e1o ngay.<\/p>\"\n\t\t\t\t\t\t\t\t\t}\n\t\t\t}\n\t\t\t\t\t\t]\n\t}\n<\/script>\n","protected":false},"excerpt":{"rendered":"<p>L\u1ed7i Google Sheets v\u00e0 Google Drive trong n8n th\u01b0\u1eddng thu\u1ed9c b\u1ed1n nh\u00f3m: x\u00e1c th\u1ef1c OAuth (403, Access blocked, token h\u1ebft h\u1ea1n), quy\u1ec1n truy c\u1eadp file (404, Permission denied), v\u01b0\u1ee3t quota API (429) v\u00e0 sai c\u1ea5u h\u00ecnh node (sai sheet, sai c\u1ed9t). B\u1ea3ng d\u01b0\u1edbi \u0111\u00e2y cho bi\u1ebft th\u00f4ng b\u00e1o l\u1ed7i, nguy\u00ean nh\u00e2n v\u00e0 c\u00e1ch s\u1eeda nhanh [&hellip;]<\/p>\n","protected":false},"author":23,"featured_media":119285,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[7397],"tags":[7343],"class_list":["post-119270","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-n8n","tag-n8n"],"_links":{"self":[{"href":"https:\/\/tino.vn\/blog\/wp-json\/wp\/v2\/posts\/119270","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/tino.vn\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/tino.vn\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/tino.vn\/blog\/wp-json\/wp\/v2\/users\/23"}],"replies":[{"embeddable":true,"href":"https:\/\/tino.vn\/blog\/wp-json\/wp\/v2\/comments?post=119270"}],"version-history":[{"count":5,"href":"https:\/\/tino.vn\/blog\/wp-json\/wp\/v2\/posts\/119270\/revisions"}],"predecessor-version":[{"id":131711,"href":"https:\/\/tino.vn\/blog\/wp-json\/wp\/v2\/posts\/119270\/revisions\/131711"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/tino.vn\/blog\/wp-json\/wp\/v2\/media\/119285"}],"wp:attachment":[{"href":"https:\/\/tino.vn\/blog\/wp-json\/wp\/v2\/media?parent=119270"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/tino.vn\/blog\/wp-json\/wp\/v2\/categories?post=119270"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/tino.vn\/blog\/wp-json\/wp\/v2\/tags?post=119270"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}