[{"data":1,"prerenderedAt":935},["ShallowReactive",2],{"navigation-en":3,"page-\u002Fen\u002Fauth-modes\u002Fappscript":134,"\u002Fen\u002Fauth-modes\u002Fappscript-surround":930},[4],{"title":5,"path":6,"stem":7,"children":8,"page":26},"En","\u002Fen","en",[9,27,48,77,90,97],{"title":10,"path":11,"stem":12,"children":13,"page":26},"Getting Started","\u002Fen\u002Fgetting-started","en\u002F1.getting-started",[14,18,22],{"title":15,"path":16,"stem":17},"Introduction","\u002Fen\u002Fgetting-started\u002Fintroduction","en\u002F1.getting-started\u002F1.introduction",{"title":19,"path":20,"stem":21},"Installation","\u002Fen\u002Fgetting-started\u002Finstallation","en\u002F1.getting-started\u002F2.installation",{"title":23,"path":24,"stem":25},"Configuration Reference","\u002Fen\u002Fgetting-started\u002Fconfiguration","en\u002F1.getting-started\u002F3.configuration",false,{"title":28,"path":29,"stem":30,"children":31,"page":26},"Composables","\u002Fen\u002Fcomposables","en\u002F2.composables",[32,36,40,44],{"title":33,"path":34,"stem":35},"useGSheet","\u002Fen\u002Fcomposables\u002Fuse-gsheet","en\u002F2.composables\u002F1.use-gsheet",{"title":37,"path":38,"stem":39},"useGSheetAsObject","\u002Fen\u002Fcomposables\u002Fuse-gsheet-as-object","en\u002F2.composables\u002F2.use-gsheet-as-object",{"title":41,"path":42,"stem":43},"useGSheetRow","\u002Fen\u002Fcomposables\u002Fuse-gsheet-row","en\u002F2.composables\u002F3.use-gsheet-row",{"title":45,"path":46,"stem":47},"useGSheetWrite","\u002Fen\u002Fcomposables\u002Fuse-gsheet-write","en\u002F2.composables\u002F4.use-gsheet-write",{"title":49,"path":50,"stem":51,"children":52,"page":26},"Authentication Modes","\u002Fen\u002Fauth-modes","en\u002F3.auth-modes",[53,57,61,65,69,73],{"title":54,"path":55,"stem":56},"Authentication Modes Overview","\u002Fen\u002Fauth-modes\u002Foverview","en\u002F3.auth-modes\u002F1.overview",{"title":58,"path":59,"stem":60},"GViz Mode (Google Visualization API)","\u002Fen\u002Fauth-modes\u002Fgviz","en\u002F3.auth-modes\u002F2.gviz",{"title":62,"path":63,"stem":64},"CSV Export Mode","\u002Fen\u002Fauth-modes\u002Fcsv","en\u002F3.auth-modes\u002F3.csv",{"title":66,"path":67,"stem":68},"Google Apps Script Mode","\u002Fen\u002Fauth-modes\u002Fappscript","en\u002F3.auth-modes\u002F4.appscript",{"title":70,"path":71,"stem":72},"API Key Mode","\u002Fen\u002Fauth-modes\u002Fapikey","en\u002F3.auth-modes\u002F5.apikey",{"title":74,"path":75,"stem":76},"Service Account Mode","\u002Fen\u002Fauth-modes\u002Fservice-account","en\u002F3.auth-modes\u002F6.service-account",{"title":78,"path":79,"stem":80,"children":81,"page":26},"AI","\u002Fen\u002Fai","en\u002F4.ai",[82,86],{"title":83,"path":84,"stem":85},"Agent Skills (AI Integration)","\u002Fen\u002Fai\u002Fagent-skills","en\u002F4.ai\u002F1.agent-skills",{"title":87,"path":88,"stem":89},"Model Context Protocol (MCP)","\u002Fen\u002Fai\u002Fmcp","en\u002F4.ai\u002F2.mcp",{"title":91,"path":92,"stem":93,"children":94},"Demos","\u002Fen\u002Fdemos","en\u002F5.demos\u002Findex",[95],{"title":96,"path":92,"stem":93},"Live Demos",{"title":98,"path":99,"stem":100,"children":101,"page":26},"Tutorials","\u002Fen\u002Ftutorials","en\u002F6.tutorials",[102,106,110,114,118,122,126,130],{"title":103,"path":104,"stem":105},"Tutorials Overview","\u002Fen\u002Ftutorials\u002Foverview","en\u002F6.tutorials\u002F0.overview",{"title":107,"path":108,"stem":109},"Apps Script Web App Tutorial","\u002Fen\u002Ftutorials\u002Fappscript-tutorial","en\u002F6.tutorials\u002F1.appscript-tutorial",{"title":111,"path":112,"stem":113},"Complete Step-by-Step Tutorial","\u002Fen\u002Ftutorials\u002Fstep-by-step","en\u002F6.tutorials\u002F1.step-by-step",{"title":115,"path":116,"stem":117},"GViz SQL Analytics Tutorial","\u002Fen\u002Ftutorials\u002Fgviz-sql-tutorial","en\u002F6.tutorials\u002F2.gviz-sql-tutorial",{"title":119,"path":120,"stem":121},"CSV Product Catalog Tutorial","\u002Fen\u002Ftutorials\u002Fcsv-catalog-tutorial","en\u002F6.tutorials\u002F3.csv-catalog-tutorial",{"title":123,"path":124,"stem":125},"API Key Inventory Tutorial","\u002Fen\u002Ftutorials\u002Fapikey-tutorial","en\u002F6.tutorials\u002F4.apikey-tutorial",{"title":127,"path":128,"stem":129},"Service Account HR & Payroll Tutorial","\u002Fen\u002Ftutorials\u002Fservice-account-tutorial","en\u002F6.tutorials\u002F5.service-account-tutorial",{"title":131,"path":132,"stem":133},"Sheet Routing Map Tutorial","\u002Fen\u002Ftutorials\u002Fsheets-routing-tutorial","en\u002F6.tutorials\u002F6.sheets-routing-tutorial",{"id":135,"title":66,"body":136,"description":924,"extension":925,"icon":926,"links":926,"meta":927,"navigation":926,"path":67,"seo":928,"stem":68,"__hash__":929},"docs_en\u002Fen\u002F3.auth-modes\u002F4.appscript.md",{"type":137,"value":138,"toc":920},"minimark",[139,152,157,180,650,689,700,704,916],[140,141,142,143,147,148,151],"p",{},"Google Apps Script mode allows both ",[144,145,146],"strong",{},"Read"," and ",[144,149,150],{},"Write"," (append, update, clear) operations without creating Google Cloud Platform (GCP) credentials or paying for API usage.",[153,154,156],"h2",{"id":155},"setup-deployment","Setup & Deployment",[158,159,160,172],"ol",{},[161,162,163,164,167,168,171],"li",{},"Open Google Sheet -> ",[144,165,166],{},"Extensions"," -> ",[144,169,170],{},"Apps Script",".",[161,173,174,175,179],{},"Paste the ",[176,177,178],"code",{},"Code.gs"," handler script:",[181,182,187],"pre",{"className":183,"code":184,"filename":178,"language":185,"meta":186,"style":186},"language-javascript shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","function doGet(e) {\n  const sheetName = e.parameter.sheet || 'Sheet1';\n  const range = e.parameter.range || 'A1:Z100';\n  const sheet = SpreadsheetApp.getActiveSpreadsheet().getSheetByName(sheetName);\n  const values = sheet.getRange(range).getValues();\n  return ContentService.createTextOutput(JSON.stringify(values)).setMimeType(ContentService.MimeType.JSON);\n}\n\nfunction doPost(e) {\n  const data = JSON.parse(e.postData.contents);\n  const sheet = SpreadsheetApp.getActiveSpreadsheet().getSheetByName(data.sheet || 'Sheet1');\n  if (data.values) {\n    data.values.forEach(r => sheet.appendRow(r));\n  }\n  return ContentService.createTextOutput(JSON.stringify({ success: true })).setMimeType(ContentService.MimeType.JSON);\n}\n","javascript","",[176,188,189,216,258,290,326,358,414,420,427,443,479,521,542,580,586,645],{"__ignoreMap":186},[190,191,194,198,202,206,210,213],"span",{"class":192,"line":193},"line",1,[190,195,197],{"class":196},"spNyl","function",[190,199,201],{"class":200},"s2Zo4"," doGet",[190,203,205],{"class":204},"sMK4o","(",[190,207,209],{"class":208},"sHdIc","e",[190,211,212],{"class":204},")",[190,214,215],{"class":204}," {\n",[190,217,219,222,226,229,232,234,237,239,242,245,248,252,255],{"class":192,"line":218},2,[190,220,221],{"class":196},"  const",[190,223,225],{"class":224},"sTEyZ"," sheetName",[190,227,228],{"class":204}," =",[190,230,231],{"class":224}," e",[190,233,171],{"class":204},[190,235,236],{"class":224},"parameter",[190,238,171],{"class":204},[190,240,241],{"class":224},"sheet",[190,243,244],{"class":204}," ||",[190,246,247],{"class":204}," '",[190,249,251],{"class":250},"sfazB","Sheet1",[190,253,254],{"class":204},"'",[190,256,257],{"class":204},";\n",[190,259,261,263,266,268,270,272,274,276,279,281,283,286,288],{"class":192,"line":260},3,[190,262,221],{"class":196},[190,264,265],{"class":224}," range",[190,267,228],{"class":204},[190,269,231],{"class":224},[190,271,171],{"class":204},[190,273,236],{"class":224},[190,275,171],{"class":204},[190,277,278],{"class":224},"range",[190,280,244],{"class":204},[190,282,247],{"class":204},[190,284,285],{"class":250},"A1:Z100",[190,287,254],{"class":204},[190,289,257],{"class":204},[190,291,293,295,298,300,303,305,308,312,314,317,319,322,324],{"class":192,"line":292},4,[190,294,221],{"class":196},[190,296,297],{"class":224}," sheet",[190,299,228],{"class":204},[190,301,302],{"class":224}," SpreadsheetApp",[190,304,171],{"class":204},[190,306,307],{"class":200},"getActiveSpreadsheet",[190,309,311],{"class":310},"swJcz","()",[190,313,171],{"class":204},[190,315,316],{"class":200},"getSheetByName",[190,318,205],{"class":310},[190,320,321],{"class":224},"sheetName",[190,323,212],{"class":310},[190,325,257],{"class":204},[190,327,329,331,334,336,338,340,343,345,347,349,351,354,356],{"class":192,"line":328},5,[190,330,221],{"class":196},[190,332,333],{"class":224}," values",[190,335,228],{"class":204},[190,337,297],{"class":224},[190,339,171],{"class":204},[190,341,342],{"class":200},"getRange",[190,344,205],{"class":310},[190,346,278],{"class":224},[190,348,212],{"class":310},[190,350,171],{"class":204},[190,352,353],{"class":200},"getValues",[190,355,311],{"class":310},[190,357,257],{"class":204},[190,359,361,365,368,370,373,375,378,380,383,385,388,391,393,396,398,401,403,406,408,410,412],{"class":192,"line":360},6,[190,362,364],{"class":363},"s7zQu","  return",[190,366,367],{"class":224}," ContentService",[190,369,171],{"class":204},[190,371,372],{"class":200},"createTextOutput",[190,374,205],{"class":310},[190,376,377],{"class":224},"JSON",[190,379,171],{"class":204},[190,381,382],{"class":200},"stringify",[190,384,205],{"class":310},[190,386,387],{"class":224},"values",[190,389,390],{"class":310},"))",[190,392,171],{"class":204},[190,394,395],{"class":200},"setMimeType",[190,397,205],{"class":310},[190,399,400],{"class":224},"ContentService",[190,402,171],{"class":204},[190,404,405],{"class":224},"MimeType",[190,407,171],{"class":204},[190,409,377],{"class":224},[190,411,212],{"class":310},[190,413,257],{"class":204},[190,415,417],{"class":192,"line":416},7,[190,418,419],{"class":204},"}\n",[190,421,423],{"class":192,"line":422},8,[190,424,426],{"emptyLinePlaceholder":425},true,"\n",[190,428,430,432,435,437,439,441],{"class":192,"line":429},9,[190,431,197],{"class":196},[190,433,434],{"class":200}," doPost",[190,436,205],{"class":204},[190,438,209],{"class":208},[190,440,212],{"class":204},[190,442,215],{"class":204},[190,444,446,448,451,453,456,458,461,463,465,467,470,472,475,477],{"class":192,"line":445},10,[190,447,221],{"class":196},[190,449,450],{"class":224}," data",[190,452,228],{"class":204},[190,454,455],{"class":224}," JSON",[190,457,171],{"class":204},[190,459,460],{"class":200},"parse",[190,462,205],{"class":310},[190,464,209],{"class":224},[190,466,171],{"class":204},[190,468,469],{"class":224},"postData",[190,471,171],{"class":204},[190,473,474],{"class":224},"contents",[190,476,212],{"class":310},[190,478,257],{"class":204},[190,480,482,484,486,488,490,492,494,496,498,500,502,505,507,509,511,513,515,517,519],{"class":192,"line":481},11,[190,483,221],{"class":196},[190,485,297],{"class":224},[190,487,228],{"class":204},[190,489,302],{"class":224},[190,491,171],{"class":204},[190,493,307],{"class":200},[190,495,311],{"class":310},[190,497,171],{"class":204},[190,499,316],{"class":200},[190,501,205],{"class":310},[190,503,504],{"class":224},"data",[190,506,171],{"class":204},[190,508,241],{"class":224},[190,510,244],{"class":204},[190,512,247],{"class":204},[190,514,251],{"class":250},[190,516,254],{"class":204},[190,518,212],{"class":310},[190,520,257],{"class":204},[190,522,524,527,530,532,534,536,539],{"class":192,"line":523},12,[190,525,526],{"class":363},"  if",[190,528,529],{"class":310}," (",[190,531,504],{"class":224},[190,533,171],{"class":204},[190,535,387],{"class":224},[190,537,538],{"class":310},") ",[190,540,541],{"class":204},"{\n",[190,543,545,548,550,552,554,557,559,562,565,567,569,572,574,576,578],{"class":192,"line":544},13,[190,546,547],{"class":224},"    data",[190,549,171],{"class":204},[190,551,387],{"class":224},[190,553,171],{"class":204},[190,555,556],{"class":200},"forEach",[190,558,205],{"class":310},[190,560,561],{"class":208},"r",[190,563,564],{"class":196}," =>",[190,566,297],{"class":224},[190,568,171],{"class":204},[190,570,571],{"class":200},"appendRow",[190,573,205],{"class":310},[190,575,561],{"class":224},[190,577,390],{"class":310},[190,579,257],{"class":204},[190,581,583],{"class":192,"line":582},14,[190,584,585],{"class":204},"  }\n",[190,587,589,591,593,595,597,599,601,603,605,607,610,613,616,620,623,625,627,629,631,633,635,637,639,641,643],{"class":192,"line":588},15,[190,590,364],{"class":363},[190,592,367],{"class":224},[190,594,171],{"class":204},[190,596,372],{"class":200},[190,598,205],{"class":310},[190,600,377],{"class":224},[190,602,171],{"class":204},[190,604,382],{"class":200},[190,606,205],{"class":310},[190,608,609],{"class":204},"{",[190,611,612],{"class":310}," success",[190,614,615],{"class":204},":",[190,617,619],{"class":618},"sfNiH"," true",[190,621,622],{"class":204}," }",[190,624,390],{"class":310},[190,626,171],{"class":204},[190,628,395],{"class":200},[190,630,205],{"class":310},[190,632,400],{"class":224},[190,634,171],{"class":204},[190,636,405],{"class":224},[190,638,171],{"class":204},[190,640,377],{"class":224},[190,642,212],{"class":310},[190,644,257],{"class":204},[190,646,648],{"class":192,"line":647},16,[190,649,419],{"class":204},[158,651,652,665,683],{"start":260},[161,653,654,655,167,658,661,662,171],{},"Click ",[144,656,657],{},"Deploy",[144,659,660],{},"New Deployment"," -> Select type ",[144,663,664],{},"Web App",[161,666,667,668,671,672,676,677,671,680,171],{},"Set ",[144,669,670],{},"Execute as",": ",[673,674,675],"em",{},"Me",", ",[144,678,679],{},"Who has access",[673,681,682],{},"Anyone",[161,684,685,686,615],{},"Copy Web App URL to ",[176,687,688],{},".env",[181,690,694],{"className":691,"code":692,"filename":688,"language":693,"meta":186,"style":186},"language-env shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","GSHEET_APPSCRIPT_URL=https:\u002F\u002Fscript.google.com\u002Fmacros\u002Fs\u002F...\u002Fexec\n","env",[176,695,696],{"__ignoreMap":186},[190,697,698],{"class":192,"line":193},[190,699,692],{},[153,701,703],{"id":702},"example-read-write","Example (Read & Write)",[181,705,710],{"className":706,"code":707,"filename":708,"language":709,"meta":186,"style":186},"language-vue shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","\u003Cscript setup lang=\"ts\">\nconst { data: items } = await useGSheetAsObject('A1:C50', { sheet: 'Feedback' })\nconst { append } = useGSheetWrite({ sheet: 'Feedback' })\n\nconst addFeedback = async () => {\n  await append('A1:C1', [['101', 'Alex', 'Great tool!']])\n}\n\u003C\u002Fscript>\n","pages\u002Ffeedback.vue","vue",[176,711,712,740,796,830,834,853,903,907],{"__ignoreMap":186},[190,713,714,717,720,723,726,729,732,735,737],{"class":192,"line":193},[190,715,716],{"class":204},"\u003C",[190,718,719],{"class":310},"script",[190,721,722],{"class":196}," setup",[190,724,725],{"class":196}," lang",[190,727,728],{"class":204},"=",[190,730,731],{"class":204},"\"",[190,733,734],{"class":250},"ts",[190,736,731],{"class":204},[190,738,739],{"class":204},">\n",[190,741,742,745,748,750,752,755,758,760,763,766,768,770,773,775,778,780,782,784,786,789,791,793],{"class":192,"line":218},[190,743,744],{"class":196},"const",[190,746,747],{"class":204}," {",[190,749,450],{"class":310},[190,751,615],{"class":204},[190,753,754],{"class":224}," items ",[190,756,757],{"class":204},"}",[190,759,228],{"class":204},[190,761,762],{"class":363}," await",[190,764,765],{"class":200}," useGSheetAsObject",[190,767,205],{"class":224},[190,769,254],{"class":204},[190,771,772],{"class":250},"A1:C50",[190,774,254],{"class":204},[190,776,777],{"class":204},",",[190,779,747],{"class":204},[190,781,297],{"class":310},[190,783,615],{"class":204},[190,785,247],{"class":204},[190,787,788],{"class":250},"Feedback",[190,790,254],{"class":204},[190,792,622],{"class":204},[190,794,795],{"class":224},")\n",[190,797,798,800,802,805,807,809,812,814,816,818,820,822,824,826,828],{"class":192,"line":260},[190,799,744],{"class":196},[190,801,747],{"class":204},[190,803,804],{"class":224}," append ",[190,806,757],{"class":204},[190,808,228],{"class":204},[190,810,811],{"class":200}," useGSheetWrite",[190,813,205],{"class":224},[190,815,609],{"class":204},[190,817,297],{"class":310},[190,819,615],{"class":204},[190,821,247],{"class":204},[190,823,788],{"class":250},[190,825,254],{"class":204},[190,827,622],{"class":204},[190,829,795],{"class":224},[190,831,832],{"class":192,"line":292},[190,833,426],{"emptyLinePlaceholder":425},[190,835,836,838,841,843,846,849,851],{"class":192,"line":328},[190,837,744],{"class":196},[190,839,840],{"class":224}," addFeedback ",[190,842,728],{"class":204},[190,844,845],{"class":196}," async",[190,847,848],{"class":204}," ()",[190,850,564],{"class":196},[190,852,215],{"class":204},[190,854,855,858,861,863,865,868,870,872,875,877,880,882,884,886,889,891,893,895,898,900],{"class":192,"line":360},[190,856,857],{"class":363},"  await",[190,859,860],{"class":200}," append",[190,862,205],{"class":310},[190,864,254],{"class":204},[190,866,867],{"class":250},"A1:C1",[190,869,254],{"class":204},[190,871,777],{"class":204},[190,873,874],{"class":310}," [[",[190,876,254],{"class":204},[190,878,879],{"class":250},"101",[190,881,254],{"class":204},[190,883,777],{"class":204},[190,885,247],{"class":204},[190,887,888],{"class":250},"Alex",[190,890,254],{"class":204},[190,892,777],{"class":204},[190,894,247],{"class":204},[190,896,897],{"class":250},"Great tool!",[190,899,254],{"class":204},[190,901,902],{"class":310},"]])\n",[190,904,905],{"class":192,"line":416},[190,906,419],{"class":204},[190,908,909,912,914],{"class":192,"line":422},[190,910,911],{"class":204},"\u003C\u002F",[190,913,719],{"class":310},[190,915,739],{"class":204},[917,918,919],"style",{},"html pre.shiki code .spNyl, html code.shiki .spNyl{--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA}html pre.shiki code .s2Zo4, html code.shiki .s2Zo4{--shiki-light:#6182B8;--shiki-default:#82AAFF;--shiki-dark:#82AAFF}html pre.shiki code .sMK4o, html code.shiki .sMK4o{--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF}html pre.shiki code .sHdIc, html code.shiki .sHdIc{--shiki-light:#90A4AE;--shiki-light-font-style:italic;--shiki-default:#EEFFFF;--shiki-default-font-style:italic;--shiki-dark:#BABED8;--shiki-dark-font-style:italic}html pre.shiki code .sTEyZ, html code.shiki .sTEyZ{--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8}html pre.shiki code .sfazB, html code.shiki .sfazB{--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D}html pre.shiki code .swJcz, html code.shiki .swJcz{--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178}html pre.shiki code .s7zQu, html code.shiki .s7zQu{--shiki-light:#39ADB5;--shiki-light-font-style:italic;--shiki-default:#89DDFF;--shiki-default-font-style:italic;--shiki-dark:#89DDFF;--shiki-dark-font-style:italic}html pre.shiki code .sfNiH, html code.shiki .sfNiH{--shiki-light:#FF5370;--shiki-default:#FF9CAC;--shiki-dark:#FF9CAC}html .light .shiki span {color: var(--shiki-light);background: var(--shiki-light-bg);font-style: var(--shiki-light-font-style);font-weight: var(--shiki-light-font-weight);text-decoration: var(--shiki-light-text-decoration);}html.light .shiki span {color: var(--shiki-light);background: var(--shiki-light-bg);font-style: var(--shiki-light-font-style);font-weight: var(--shiki-light-font-weight);text-decoration: var(--shiki-light-text-decoration);}html .default .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}html.dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}",{"title":186,"searchDepth":193,"depth":218,"links":921},[922,923],{"id":155,"depth":218,"text":156},{"id":702,"depth":218,"text":703},"Free Read and Write operations using Google Apps Script Web App proxies.","md",null,{},{"title":66,"description":924},"v6qv-2ViRV3-2wzMiVZNauB8QyY6fls_DbIihC7lNpc",[931,933],{"title":62,"path":63,"stem":64,"description":932,"children":-1},"Fast, zero-config CSV stream parsing for public Google Sheets.",{"title":70,"path":71,"stem":72,"description":934,"children":-1},"Standard Google Sheets API v4 integration using GCP API Keys.",1786088226493]