Ratgeber

So verbindest du Google Sheets mit deiner App

Um Google Sheets mit deiner App zu verbinden, aktivierst du die Google Sheets API in einem Google-Cloud-Projekt, legst ein Dienstkonto an, teilst die Tabelle mit der E-Mail-Adresse des Dienstkontos und speicherst dessen Schlüssel als serverseitiges Geheimnis. Dein Server liest Zeilen dann mit spreadsheets.values.get und fügt Zeilen mit spreadsheets.values.append hinzu. Wenn Nutzer ihre eigenen Tabellen verbinden sollen, nimm stattdessen OAuth. Ist die Tabelle vollständig öffentlich, reicht zum Lesen ein einfacher API-Schlüssel.

Dieser Leitfaden zeigt, welche Methode passt, welche Aufrufe du brauchst, welche Kontingente und Stolperfallen es gibt und welche Prompts du an einen KI-App-Builder geben kannst. Die Angaben zu Google stammen aus der Entwicklerdokumentation von Google, Stand September 2026.

Warum überhaupt eine Tabelle anbinden

Häufige Gründe:

  • Den Workflow des Teams beibehalten. Die Mitarbeitenden bearbeiten weiter eine Preisliste oder einen Dienstplan in Sheets, und die App zeigt sie an.
  • Daten dort sammeln, wo Menschen ohnehin schauen. Neue Anmeldungen, Bestellungen oder Formularantworten landen als Zeilen.
  • Auswertungen. Exportiere Appdaten in eine Tabelle für Menschen, die mit Tabellen arbeiten.
  • Ein Zwischenschritt. Starte mit der Tabelle und wechsle später zu einer richtigen Datenbank. Siehe wie du eine Tabelle in eine App verwandelst.

Wähle, wie sich deine App bei Google anmeldet

Googles Anleitung zu Anmeldedaten beschreibt drei Typen:

AnmeldedatenWorauf es Zugriff hatAm besten für
API-SchlüsselNur öffentlich verfügbare Daten, etwa Dateien mit „Jeder mit dem Link“Eine öffentliche Tabelle lesen
DienstkontoDaten, die deiner App gehören, oder bestimmte Dateien, die mit der E-Mail des Dienstkontos geteilt sindDeine App liest und schreibt deine Tabellen
OAuth-Client-IDDie eigenen Dateien eines Nutzers, nachdem er zugestimmt hatJede Nutzerin oder jeder Nutzer verbindet die eigenen Tabellen

Für die meisten Apps ist ein Dienstkonto die richtige Wahl: eine Anmeldung, die dir gehört, mit Zugriff nur auf die Tabellen, die du ausdrücklich damit teilst.

Schritt für Schritt mit einem Dienstkonto

  1. Lege ein Google-Cloud-Projekt an oder wähle eins aus und aktiviere die Google Sheets API.
  2. Lege ein Dienstkonto und einen Schlüssel dafür an. Der Schlüssel ist eine JSON-Datei. Behandle sie wie ein Passwort.
  3. Teile die Tabelle mit der E-Mail-Adresse des Dienstkontos, als Betrachter für reinen Lesezugriff oder als Bearbeiter zum Schreiben. Laut Googles Anleitung geschieht das über den üblichen Freigabedialog.
  4. Speichere den Schlüssel als Geheimnis auf deinem Server, etwa als GOOGLE_SERVICE_ACCOUNT_JSON, und die Tabellen-ID (die lange Zeichenfolge in der URL der Tabelle) als SHEET_ID.
  5. Rufe die API vom Server aus auf mit der Client-Bibliothek von Google für deine Sprache.
  6. Cache Lesezugriffe, wenn viele Besucher dieselben Daten sehen, damit du das Kontingent nicht ausschöpfst.

Die Aufrufe, die du brauchst

Aus Googles Anleitung zum Lesen und Schreiben von Werten:

MethodeWas sie tut
spreadsheets.values.getLiest einen Bereich, etwa Leads!A1:E
spreadsheets.values.batchGetLiest mehrere Bereiche in einer Anfrage
spreadsheets.values.updateSchreibt in einen bestimmten Bereich
spreadsheets.values.appendHängt Zeilen unter die vorhandenen Daten einer Tabelle

Bereiche verwenden die A1-Notation. Google weist darauf hin, dass ein Bereich ohne Blattnamen, etwa A1:B2, für das erste Blatt gilt. Nenne deshalb den Tab ausdrücklich, damit es nicht überrascht, wenn jemand die Tabs umsortiert.

RAW vs. USER_ENTERED

Beim Schreiben brauchst du eine valueInputOption:

  • RAW speichert genau das, was du sendest, als Text. =1+2 wird als Text =1+2 gespeichert.
  • USER_ENTERED behandelt die Eingabe, als wäre sie in Sheets getippt: Datumsangaben werden zu Datumswerten und =1+2 wird zu einer Formel.

Wenn du Text schreibst, den Nutzer in deiner App eingegeben haben, verwende RAW. Mit USER_ENTERED könnte jemand eine Formel abschicken, die läuft, sobald eine Kollegin oder ein Kollege die Tabelle öffnet.

Kontingente und Fehler

Laut Googles Seite zu den Limits der Sheets-API (Stand September 2026) gilt:

LimitLeseanfragenSchreibanfragen
Pro Minute und Projekt300300
Pro Minute, pro Nutzer und Projekt6060

Es gibt kein Tageslimit, solange du die Kontingente pro Minute einhältst. Wird ein Limit überschritten, kommt 429: Too many requests. Google empfiehlt exponentielles Backoff mit gekürzten Wartezeiten: Du wartest nach jedem fehlgeschlagenen Versuch länger, mit einer zufälligen Verzögerung, bis zu einem Maximum. Eine einzelne Anfrage, die länger als 180 Sekunden dauert, läuft in ein Timeout.

In der Praxis heißt das: Ruf die API nicht bei jedem Seitenaufruf auf. Cache die Daten der Tabelle mindestens eine Minute, bündle Lesezugriffe mit batchGet und bündle Schreibzugriffe, wo es geht.

Optionen und Abwägungen

AnsatzVorteileNachteile
Tabelle als aktive DatenquelleMitarbeitende arbeiten in einem vertrauten Werkzeug; keine Adminmasken nötigKontingente, keine Berechtigungen pro Zeile, leicht kaputtzumachen, wenn eine Spalte umbenannt wird
Tabelle in eine Datenbank synchronisierenSchnelle, zuverlässige Lesezugriffe; die App läuft weiter, wenn Sheets ausfälltDu brauchst einen Synchronisationsjob und eine Regel, welche Seite gewinnt
Datenbank zuerst, Export in die TabelleDie App besitzt die Daten; die Tabelle ist ein BerichtÄnderungen in der Tabelle fließen nicht zurück
Automatisierungstool dazwischenKein Code für einfache AbläufeEin weiteres Abo; schwieriger zu debuggen

Bei allem mit vielen Nutzern oder sensiblen Daten ist eine Datenbank die bessere Quelle der Wahrheit. Siehe was eine Datenbank ist.

Prompts für deinen KI-Builder

Eine Tabelle lesen:

Zeige den Tab „Menü“ unserer Google-Tabelle auf der Menüseite. Nutze die Google Sheets API vom Server aus mit einem Dienstkonto, dessen JSON-Schlüssel im Geheimnis GOOGLE_SERVICE_ACCOUNT_JSON steht, und die Tabellen-ID in SHEET_ID. Lies den Bereich Menü!A2:D (Name, Beschreibung, Preis, Kategorie). Speichere das Ergebnis 5 Minuten im Cache. Wenn die API fehlschlägt, zeige die zuletzt gecachte Version. Schicke den Schlüssel niemals an den Browser.

Zeilen schreiben:

Wenn jemand das Kontaktformular abschickt, speichere es in unserer Datenbank und hänge zusätzlich eine Zeile im Tab „Leads“ an (Datum, Name, E-Mail, Nachricht) über spreadsheets.values.append mit valueInputOption RAW. Wenn Google 429 zurückgibt, wiederhole mit exponentiellem Backoff; schlägt es weiterhin fehl, bewahre den Lead in der Datenbank auf und versuche es später erneut.

Typische Fehler

  • Vergessen, die Tabelle mit der E-Mail des Dienstkontos zu teilen. Die API liefert dann einen Berechtigungsfehler, obwohl der Schlüssel stimmt.
  • Schlüssel im Frontend oder im Repository. Der JSON-Schlüssel gewährt Zugriff auf jede Tabelle, die mit ihm geteilt ist. Siehe wie du API-Schlüssel sicher aufbewahrst.
  • USER_ENTERED für Nutzereingaben verwenden, was Formel-Injection ermöglicht.
  • Die API bei jeder Anfrage aufrufen und beim ersten Traffic-Anstieg das Kontingent pro Minute erreichen.
  • Auf Spaltenpositionen vertrauen. Jemand fügt eine Spalte ein, und die App liest die falschen Daten. Lies die Kopfzeile und ordne nach Namen zu, oder sperre die Kopfzeile.
  • Die Tabelle weiter freigeben als nötig. „Jeder mit dem Link“ macht sie öffentlich.
  • Eine Tabelle als Mehrbenutzer-Datenbank nutzen. Gleichzeitige Schreibzugriffe und fehlende Berechtigungen führen zu verlorenen oder offengelegten Daten.

Checkliste

  • Sheets-API aktiviert; Dienstkonto angelegt
  • Tabelle mit der E-Mail des Dienstkontos mit der minimal nötigen Rolle geteilt
  • Schlüssel und Tabellen-ID als serverseitige Geheimnisse gespeichert
  • Alle Aufrufe laufen über den Server
  • Tab-Namen in den Bereichen verwendet
  • RAW für vom Nutzer eingegebenen Text
  • Lesezugriffe gecacht; 429 mit Backoff behandelt
  • Die App funktioniert eingeschränkt, wenn Sheets nicht erreichbar ist
  • Entschieden, welche Seite die Quelle der Wahrheit ist

Google Sheets in Mythex

Mythex bietet zwei verschiedene Wege, mit Tabellen zu arbeiten. Konnektoren verbinden dein Google-Konto mit Mythex, damit der Agent es beim Bauen nutzen kann, etwa um eine Tabelle zu lesen und daraus ein Dashboard zu bauen. Laut Dokumentation bleibt die Zugangsdaten beim Verbindungsdienst von Mythex und landet nie in deinem Code. Bestätige jede Berechtigung, die Google verlangt (siehe Konnektoren). Damit die veröffentlichte App selbst eine Tabelle lesen oder schreiben kann, ist der zuverlässige Weg der in dieser Anleitung beschriebene: ein Dienstkonto-Schlüssel als Projektgeheimnis und Aufrufe der Sheets-API vom Server aus, wie in Beliebige API einbinden. Wenn du der Tabelle entwachsen bist, bitte den Agenten, die Daten in die Projektdatenbank zu verschieben und ein Dashboard darauf zu bauen.

Fragen

Wie kann meine App ein privates Google Sheet lesen?

Der übliche Weg ist ein Google-Cloud-Dienstkonto: Aktiviere die Sheets-API, lege das Dienstkonto und seinen Schlüssel an und teile die Tabelle dann mit der E-Mail-Adresse des Dienstkontos als Betrachter oder Bearbeiter. Dein Server nutzt den Schlüssel, der als Geheimnis gespeichert ist, für die Aufrufe an die Sheets-API.

Kann ich einen Google-API-Schlüssel nutzen, um auf eine Tabelle zuzugreifen?

Nur für öffentliche Daten. Googles Anleitung zu Anmeldedaten sagt, dass API-Schlüssel für anonymen Zugriff auf öffentlich verfügbare Daten gedacht sind, etwa Dateien, die für jede Person mit dem Link freigegeben sind. Private Tabellen brauchen ein Dienstkonto oder OAuth.

Welche Limits hat die Google-Sheets-API?

Laut Google gelten (Stand September 2026) 300 Lese- und 300 Schreibanfragen pro Minute und Projekt sowie 60 Lese- und 60 Schreibanfragen pro Minute, pro Nutzer und Projekt, ohne Tageslimit. Bei Überschreitung kommt ein 429-Fehler; Google empfiehlt exponentielles Backoff mit gekürzten Wartezeiten.

Sollte ich Google Sheets als Datenbank meiner App nutzen?

Das funktioniert für kleine Apps mit wenig Traffic, bei denen Menschen die Daten auch direkt in der Tabelle bearbeiten. Bei vielen Nutzern, häufigen Schreibzugriffen, Beziehungen zwischen Datensätzen oder Berechtigungen pro Nutzer ist eine echte Datenbank zuverlässiger. Du kannst weiterhin in eine Tabelle exportieren.

Mythex · Pricing · Alles mit KI bauen · Vorlagen für Websites und Apps · Mythex im Vergleich · Glossar zum App-Bau mit KI · Kostenlose Tools für den App-Bau mit KI · English

English አማርኛ العربية Български বাংলা Bosanski Català Čeština Dansk Ελληνικά 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 Svenska Kiswahili தமிழ் తెలుగు ไทย Tagalog Türkçe Українська اردو Tiếng Việt 简体中文 繁體中文(香港) 繁體中文(台灣)