Guider

Så kopplar du Google Sheets till din app

För att koppla Google Sheets till din app aktiverar du Google Sheets API i ett Google Cloud-projekt, skapar ett tjänstekonto, delar kalkylarket med tjänstekontots e-postadress och lagrar nyckeln som en hemlighet på servern. Din server läser sedan rader med spreadsheets.values.get och lägger till rader med spreadsheets.values.append. Om användare behöver koppla sina egna kalkylark använder du i stället OAuth, och om kalkylarket är helt offentligt räcker en enkel API-nyckel för att läsa.

Den här guiden går igenom vilken metod som passar, anropen du behöver, kvoter och fallgropar, samt prompter för en AI-appbyggare. Uppgifterna om Google kommer från Googles utvecklardokumentation per september 2026.

Varför koppla ett kalkylark alls

Vanliga skäl:

  • Behåll teamets arbetssätt. Personalen fortsätter redigera en prislista eller ett schema i Sheets, och appen visar det.
  • Samla data där folk redan tittar. Nya registreringar, beställningar eller formulärsvar hamnar som rader.
  • Rapportering. Exportera appdata till ett kalkylark för personer som lever i kalkylprogram.
  • Ett steg på vägen. Börja med kalkylarket och flytta sedan till en riktig databas. Se hur du gör en app av ett kalkylark.

Välj hur din app loggar in hos Google

Googles guide om autentiseringsuppgifter beskriver tre typer:

AutentiseringsuppgiftVad den kan komma åtBäst för
API-nyckelBara offentligt tillgängliga data, till exempel filer som delats med "Alla med länken"Att läsa ett offentligt kalkylark
TjänstekontoData som din app äger, eller specifika filer som delats med tjänstekontots e-postadressDin app som läser och skriver dina kalkylark
OAuth-klient-IDEn användares egna filer, efter medgivandeAtt låta varje användare koppla sina kalkylark

För de flesta appar är ett tjänstekonto rätt val: en uppsättning autentiseringsuppgifter som du äger, med åtkomst bara till de kalkylark du uttryckligen delar med det.

Steg för steg med ett tjänstekonto

  1. Skapa eller välj ett Google Cloud-projekt och aktivera Google Sheets API.
  2. Skapa ett tjänstekonto och en nyckel för det. Nyckeln är en JSON-fil. Behandla den som ett lösenord.
  3. Dela kalkylarket med tjänstekontots e-postadress, som Visare för läsning eller Redigerare för skrivning. Googles guide säger att detta görs via det vanliga delningsfönstret.
  4. Lagra nyckeln som en hemlighet på servern, till exempel GOOGLE_SERVICE_ACCOUNT_JSON, och kalkylarkets ID (den långa strängen i kalkylarkets URL) som SHEET_ID.
  5. Anropa API:et från servern med Googles klientbibliotek för ditt språk.
  6. Cacha läsningar om många besökare ser samma data, så att du inte når kvoten.

Anropen du kommer att använda

Från Googles guide om att läsa och skriva värden:

MetodVad den gör
spreadsheets.values.getLäser ett område, till exempel Leads!A1:E
spreadsheets.values.batchGetLäser flera områden i ett anrop
spreadsheets.values.updateSkriver till ett specifikt område
spreadsheets.values.appendLägger till rader efter befintlig data i en tabell

Områden använder A1-notation. Google påpekar att ett område utan bladnamn, som A1:B2, gäller det första bladet. Ange därför bladet uttryckligen för att undvika överraskningar när någon flyttar om flikarna.

RAW kontra USER_ENTERED

Skrivningar behöver en valueInputOption:

  • RAW lagrar exakt det du skickar, som text. =1+2 lagras som texten =1+2.
  • USER_ENTERED behandlar indata som om den skrivits in i Sheets: datum blir datum och =1+2 blir en formel.

Om du skriver text som användare har skrivit in i din app, använd RAW. Med USER_ENTERED kan någon skicka in en formel som körs när en kollega öppnar kalkylarket.

Kvoter och fel

Per september 2026 listar Googles sida om gränser för Sheets API följande:

GränsLäsanropSkrivanrop
Per minut per projekt300300
Per minut per användare per projekt6060

Det finns ingen dagsgräns så länge du håller dig inom kvoterna per minut. Om du överskrider dem får du 429: Too many requests, och Google rekommenderar trunkerad exponentiell backoff: vänta längre efter varje misslyckat försök, med en slumpmässig fördröjning, upp till ett maximum. Ett enskilt anrop som tar över 180 sekunder får timeout.

I praktiken: anropa inte API:et vid varje sidvisning. Cacha kalkylarkets data i minst en minut, batcha läsningar med batchGet och batcha skrivningar när det går.

Alternativ och avvägningar

MetodFördelarNackdelar
Kalkylarket som levande datakällaPersonalen redigerar i ett välbekant verktyg. Inga adminskärmar att byggaKvoter, inga behörigheter per rad, lätt att gå sönder genom att byta namn på en kolumn
Synka kalkylarket till en databasSnabba och tillförlitliga läsningar. Appen fungerar även om Sheets är nereDu behöver ett synkjobb och en regel för vilken sida som vinner
Databas först, exportera till kalkylarkAppen äger datan. Kalkylarket är en rapportRedigeringar i kalkylarket flödar inte tillbaka
Automatiseringsverktyg emellanIngen kod för enkla flödenYtterligare en prenumeration. Svårare att felsöka

För allt med många användare eller känslig data är en databas den bättre källan till sanning. Se vad en databas är.

Prompter till din AI-byggare

Läsa ett kalkylark:

Visa fliken "Meny" från vårt Google-kalkylark på menysidan. Använd Google Sheets API från servern med ett tjänstekonto vars JSON-nyckel finns i hemligheten GOOGLE_SERVICE_ACCOUNT_JSON, och kalkylarkets ID i SHEET_ID. Läs området Menu!A2:D (namn, beskrivning, pris, kategori). Cacha resultatet i 5 minuter. Om API:et misslyckas, visa den senast cachade versionen. Skicka aldrig nyckeln till webbläsaren.

Skriva rader:

När någon skickar kontaktformuläret, spara det i vår databas och lägg även till en rad i fliken "Leads" (datum, namn, e-post, meddelande) med spreadsheets.values.append och valueInputOption RAW. Om Google returnerar 429, försök igen med exponentiell backoff. Om det fortfarande misslyckas, behåll leadet i databasen och försök igen senare.

Vanliga misstag

  • Att glömma att dela kalkylarket med tjänstekontots e-postadress. API:et svarar då med ett behörighetsfel även om nyckeln är korrekt.
  • Nyckeln i frontend eller i repositoryt. JSON-nyckeln ger åtkomst till alla kalkylark som delats med den. Se hur du håller API-nycklar säkra.
  • Att använda USER_ENTERED för användarindata, vilket tillåter formelinjektion.
  • Att anropa API:et vid varje förfrågan och nå kvoten per minut vid första trafiktoppen.
  • Att förlita sig på kolumnpositioner. Någon lägger in en kolumn och appen läser fel data. Läs rubrikraden och mappa efter namn, eller lås rubriken.
  • Att dela kalkylarket bredare än nödvändigt. "Alla med länken" gör det publikt.
  • Att använda ett kalkylark som fleranvändardatabas. Samtidiga skrivningar och saknade behörigheter leder till förlorad eller läckt data.

Checklista

  • Sheets API aktiverat, tjänstekonto skapat
  • Kalkylarket delat med tjänstekontots e-post på lägsta nödvändiga roll
  • Nyckel och kalkylark-ID lagrade som hemligheter på servern
  • Alla anrop görs från servern
  • Bladnamn används i områden
  • RAW används för användarnas text
  • Läsningar cachade. 429 hanteras med backoff
  • Appen fungerar utan Sheets, med begränsad funktion
  • Beslutat vilken sida som är källan till sanning

Google Sheets i Mythex

Mythex har två olika sätt att arbeta med Sheets. Kopplingar länkar ditt Google-konto till Mythex så att agenten kan använda det medan du bygger, till exempel för att läsa ett kalkylark och bygga en instrumentpanel av det. Dokumentationen säger att autentiseringsuppgifterna stannar hos Mythex anslutningstjänst och aldrig hamnar i din kod (se Kopplingar, och godkänn varje behörighet som Google frågar efter). För att den publicerade appen ska kunna läsa eller skriva i ett kalkylark på egen hand är det pålitliga sättet det i den här guiden: en nyckel för tjänstekontot lagrad som projekthemlighet och Sheets API-anrop från din server, som i Integrera valfritt API. Om du växer ur kalkylarket, be agenten flytta datan till projektets databas och bygga en instrumentpanel ovanpå den.

Frågor

Hur kan min app läsa ett privat Google-kalkylark?

Det vanliga sättet är ett Google Cloud-tjänstekonto: aktivera Sheets API, skapa tjänstekontot och dess nyckel och dela sedan kalkylarket med tjänstekontots e-postadress som Visare eller Redigerare. Din server använder nyckeln, som lagras som en hemlighet, för att anropa Sheets API.

Kan jag använda en Google API-nyckel för att komma åt ett kalkylark?

Bara för publika data. Googles guide om autentiseringsuppgifter säger att API-nycklar är för anonym åtkomst till offentligt tillgängliga data, till exempel filer som delats med vem som helst som har länken. Privata kalkylark kräver ett tjänstekonto eller OAuth.

Vilka gränser gäller för Google Sheets API?

Per september 2026 anger Google 300 läsanrop och 300 skrivanrop per minut per projekt, och 60 av vardera per minut per användare per projekt, utan dagsgräns. Överskrider du gränserna får du ett 429-fel. Google rekommenderar trunkerad exponentiell backoff.

Ska jag använda Google Sheets som databas för min app?

Det fungerar för små appar med låg trafik där människor även redigerar datan i kalkylarket. För många användare, täta skrivningar, relationer mellan poster eller behörigheter per användare är en riktig databas mer tillförlitlig, och du kan fortfarande exportera till ett kalkylark.

Mythex · Pricing · Bygg vad som helst med AI · Mallar för webbplatser och appar · Mythex jämfört · Ordlista för apputveckling med AI · Gratis verktyg för apputveckling med AI · English

English አማርኛ العربية Български বাংলা Bosanski Català Čeština Dansk Deutsch Ελληνικά Español Español (España) Eesti فارسی Suomi Français Français (Canada) ગુજરાતી हिन्दी Hrvatski Magyar Հայերեն Bahasa Indonesia Íslenska Italiano 日本語 ქართული Қазақ тілі ಕನ್ನಡ 한국어 Lietuvių Latviešu Македонски മലയാളം Монгол मराठी Bahasa Melayu မြန်မာ Norsk bokmål Nederlands ਪੰਜਾਬੀ Polski Português (Brasil) Português (Portugal) Română Русский Slovenčina Slovenščina Soomaali Shqip Srpski Kiswahili தமிழ் తెలుగు ไทย Tagalog Türkçe Українська اردو Tiếng Việt 简体中文 繁體中文(香港) 繁體中文(台灣)