Migration

Die neue Google Ads-Skriptinfrastruktur basiert auf der Google Ads API. Aufgrund der unterschiedlichen Architektur dieser API müssen Sie möglicherweise Ihre vorhandenen Skripts aktualisieren. Wir haben alles daran gesetzt, so viel Abwärtskompatibilität wie möglich zu gewährleisten. Diese Änderungen sollten daher geringfügig sein.

Berichte

Viele AWQL-Berichte funktionieren weiterhin. Bei Verwendung der neuen Infrastruktur konvertieren Skripts Ihre AWQL-Abfrage in GAQL, die neue Abfragesprache der Google Ads API, führen sie mit dem neuen Back-End aus und konvertieren die Ergebnisse zurück in das Format, das ursprünglich von AWQL-Berichten verwendet wurde. Abfragen mit GAQL werden unverändert übergeben.

Aufgrund dieses Aufwands empfehlen wir Ihnen, Ihre Skripts zu prüfen und AWQL-Abfragen nach Möglichkeit auf GAQL zu aktualisieren. Sie können das Tool zur Abfragemigration verwenden, das dieselbe Logik wie Skripts verwendet, um die GAQL-Abfrage für eine bestimmte AWQL-Abfrage zu ermitteln, oder den interaktiven Query Builder zum Erstellen von Abfragen verwenden.

Einschränkungen bei der automatischen Übersetzung von AWQL in GAQL:

  • Nicht alle AWQL-Abfragen lassen sich korrekt in GAQL-Abfragen übertragen. In diesen Fällen wird eine Fehlermeldung mit einigen Details zum Fehler protokolliert, damit Sie die Fehler manuell beheben können.
  • Nicht alle Berichtstypen aus AWQL werden in GAQL unterstützt.
  • GAQL unterstützt keine Zeilen mit Null-Impressionen. Wenn Sie festlegen, dass ein Bericht keine Impressionen enthalten soll, wird ein Fehler ausgegeben.
  • Einige mehrdeutige Felder können nicht in Filtern verwendet werden. Beispielsweise kann „Anzeigentitel“ auf eine beliebige Anzahl verschiedener Anzeigenfelder verweisen.
  • Einige Felder geben möglicherweise Ergebnisse in einem anderen Format zurück, z. B. wenn ein Ergebnis in viele Spalten aufgeteilt wird.

Selectors organisieren

Beim Abrufen von Ressourcen mithilfe von Skripts werden withCondition- und orderBy-Aufrufe häufig verwendet, um die Ergebnisse im Iterator einzuschränken oder anzuordnen. In den Feldern in diesen Aufrufen werden jetzt die neuen Google Ads API-Namen verwendet. Zum Filtern nach Kampagnennamen hätten Sie zuvor Folgendes verwendet:

.withCondition('CampaignName = "SOME_CAMPAIGN_NAME"')

Jetzt sollten Sie nach Möglichkeit die neuen Feldnamen für diese Bedingungen verwenden:

.withCondition('campaign.name = "SOME_CAMPAIGN_NAME"')

Wir haben uns jedoch bemüht, eine Zuordnung alter Namen zu neuen Namen einzubeziehen. Wenn Ihr Skript also noch CampaignName verwendet, wird es zur Laufzeit automatisch durch campaign.name ersetzt, damit das Skript weiterhin funktioniert. Wenn Probleme mit den alten Stilnamen auftreten, aktualisieren Sie Ihre Skripts, um die neuen Stilnamen als ersten Fehlerbehebungsschritt zu verwenden.

Einschränkungen

Viele Limits stimmen mit denen in der alten Infrastruktur überein und die hier vorgenommenen Änderungen tragen im Allgemeinen zur Leistungssteigerung bei.

  • Die Zeitlimits sind gleich. Ein Skript kann 30 Minuten lang ausgeführt werden.
  • Ein einzelner Iterator gibt standardmäßig 50.000 Entitäten zurück, die jedoch überschrieben werden kann. Zuvor konnte dieses Limit von 50.000 nicht angepasst werden.
  • Ein einzelner Selector kann höchstens 10.000 IDs (unverändert) verarbeiten.
  • In der neuen Infrastruktur ist die Anzahl der Entitäten, die in einem einzelnen Skript verarbeitet werden können, nicht begrenzt. Bisher lag das Limit bei 250.000.
  • In der neuen Infrastruktur ist die Anzahl der Keywords oder Anzeigen, die pro Ausführung erstellt werden können, nicht begrenzt. Bisher lag das Limit bei 250.000.
  • Die Logging-Ausgabe wird bei 100 KB abgeschnitten (unverändert).
  • Kontingente für Apps Script-Dienste (TableApp, MailApp usw.) bleiben unverändert.
  • Kontingente für Google Ads werden wie bei Verwendung der API erzwungen. Ihr Script unterliegt dann zwar API-Ratenlimits, doch dies bietet mehr Flexibilität für den Zugriff auf mehr Berichte oder für weitere Änderungen pro Ausführung.

Sonstige Änderungen

ExecutionInfo stellt getRemainingCreateQuota() oder getRemainingGetQuota() nicht mehr zur Verfügung, da diese Kontingente in der neuen Version nicht mehr gelten.