Die neue Infrastruktur für Google Ads-Skripts basiert auf der Google Ads API. Aufgrund der unterschiedlichen Architektur dieser API müssen Sie möglicherweise Ihre vorhandenen Scripts aktualisieren. Wir haben uns bemüht, die Abwärtskompatibilität so weit wie möglich zu gewährleisten. Daher sollten diese Änderungen geringfügig sein.
Berichte
Viele AWQL-Berichte funktionieren weiterhin. Bei der Verwendung der neuen Infrastruktur werden Ihre AWQL-Abfragen von Scripts in GAQL (die neue Abfragesprache für die Google Ads API) konvertiert, im neuen Backend ausgeführt und dann in das Format zurückverwandelt, das ursprünglich für AWQL-Berichte verwendet wurde. Abfragen mit GAQL werden unverändert übergeben.
Aus diesem Grund empfehlen wir Ihnen, Ihre Scripts zu prüfen und AWQL-Abfragen nach Möglichkeit in GAQL zu aktualisieren. Sie können das Tool zur Abfragemigration verwenden, das dieselbe Logik wie Scripts verwendet, um die GAQL-Abfrage für eine bestimmte AWQL-Abfrage zu ermitteln. Alternativ können Sie den interaktiven Abfrage-Builder verwenden, um Abfragen zu erstellen.
Die automatische AWQL-zu-GAQL-Übersetzung hat einige Einschränkungen:
- Nicht alle AWQL-Abfragen können problemlos in GAQL-Abfragen umgewandelt werden. In diesen Fällen wird eine Fehlermeldung mit Details zum Fehler protokolliert, um Ihnen bei der manuellen Korrektur zu helfen.
- 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.
- Bei einigen Feldern werden möglicherweise Ergebnisse in einem anderen Format zurückgegeben, z. B. wird ein Ergebnis in viele Spalten aufgeteilt.
Auswahlen organisieren
Beim Abrufen von Ressourcen mithilfe von Scripts werden häufig withCondition
- und orderBy
-Aufrufe verwendet, um die Ergebnisse im Iterator einzuschränken oder zu sortieren. Die Felder in diesen Aufrufen verwenden jetzt die neuen Namen der Google Ads API. Wenn Sie beispielsweise nach dem Kampagnennamen filtern wollten, haben Sie bisher Folgendes verwendet:
.withCondition('CampaignName = "SOME_CAMPAIGN_NAME"')
Verwenden Sie jetzt nach Möglichkeit die neuen Feldnamen für diese Bedingungen:
.withCondition('campaign.name = "SOME_CAMPAIGN_NAME"')
Wir haben jedoch versucht, eine Zuordnung alter Namen zu neuen Namen vorzunehmen. Wenn in Ihrem Script also weiterhin CampaignName
verwendet wird, wird es bei der Laufzeit automatisch durch campaign.name
ersetzt, damit es weiterhin funktioniert. Wenn Probleme mit den alten Namen auftreten, aktualisieren Sie Ihre Scripts als ersten Schritt zur Fehlerbehebung, damit die neuen Namen verwendet werden.
Limits
Viele Limits sind mit denen der alten Infrastruktur identisch. Die hier vorgenommenen Änderungen tragen in der Regel dazu bei, die Leistung zu steigern.
- Die Zeitlimits sind gleich. Die Ausführung eines Scripts kann 30 Minuten dauern.
- Ein einzelner Iterator gibt standardmäßig 50.000 Entitäten zurück. Dieser Wert kann jedoch überschrieben werden. Bisher war dieser Grenzwert von 50.000 nicht anpassbar.
- Eine einzelne Auswahl kann maximal 10.000 IDs verarbeiten (unverändert).
- Bei der neuen Infrastruktur ist die Anzahl der Entitäten, die in einem einzelnen Script 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, unbegrenzt. Bisher lag das Limit bei 250.000.
- Die Protokollausgabe wird auf 100 KB gekürzt (unverändert).
- Die Kontingente für Apps Script-Dienste (z. B. SpreadsheetApp und MailApp) bleiben unverändert.
- Die Kontingente für Google Ads werden so erzwungen, als würden Sie die API verwenden. Das Script unterliegt also den API-Taktlimits. Dadurch haben Sie jedoch mehr Flexibilität, um pro Ausführung auf mehr Berichte zuzugreifen oder mehr Änderungen vorzunehmen.
Sonstige Änderungen
Die ExecutionInfo
macht getRemainingCreateQuota()
oder getRemainingGetQuota()
nicht mehr verfügbar, da diese Kontingente in der neuen Version nicht mehr gelten.