Schlüsselterminologie
- Ressource
- Eine Entität in Google Ads, z. B.
campaignoderad_group. - Segment
- Eine Dimension, mit der Daten gruppiert werden, z. B.
segments.dateodersegments.device. Wenn Segmente mit Messwerten in dieSELECT-Klausel aufgenommen werden, werden die Messwerte nach Segment aufgeteilt. - Messwert
- Ein Maß für die Leistung, z. B.
metrics.impressionsodermetrics.clicks. - Zugeordnete Ressource
- Eine Ressource, die implizit mit der Hauptressource in der
FROM-Klausel verknüpft wird. So können Sie ihre Attribute zusammen mit Attributen der Hauptressource auswählen.
Ressourcen- oder Metadateninformationen abfragen
Mit der Google Ads Query Language können Sie die Google Ads API nach den folgenden Arten von Informationen abfragen:
Ressourcen und die zugehörigen Attribute, Segmente und Messwerte mit
GoogleAdsServiceSearch oder SearchStream: Das Ergebnis einerGoogleAdsService-Abfrage ist eine Liste vonGoogleAdsRow-Instanzen, wobei jedeGoogleAdsRoweine Ressource darstellt.Wenn Attribute oder Messwerte angefordert werden, enthält die Zeile auch diese Felder. Wenn Segmente angefordert werden, enthält die Antwort auch eine zusätzliche Zeile für jedes Segment-Ressourcen-Tupel.
Metadaten zu verfügbaren Feldern und Ressourcen in
GoogleAdsFieldService: Dieser Dienst bietet einen Katalog abfragbarer Felder mit Details zu ihrer Kompatibilität und ihrem Typ.Das Ergebnis einer
GoogleAdsFieldService-Anfrage ist eine Liste vonGoogleAdsField-Instanzen, wobei jedeGoogleAdsFieldDetails zum angeforderten Feld enthält.
Weitere Informationen zur Abfragestruktur finden Sie unter Abfragestruktur und Grammatik der Google Ads Query Language.
Abfrage von Ressourcenattributen
Hier ist ein Beispiel für eine einfache Abfrage für Attribute der Kampagnenressource, die zeigt, wie die Kampagnen-ID, der Name und der Status zurückgegeben werden:
SELECT
campaign.id,
campaign.name,
campaign.status
FROM campaign
ORDER BY campaign.id
In dieser Abfrage wird nach Kampagnen-ID sortiert. Jedes resultierende GoogleAdsRow-Objekt stellt ein campaign-Objekt dar, das mit den ausgewählten Feldern gefüllt ist, einschließlich der resource_name der Kampagne.
Informationen zu anderen Feldern, die für Kampagnenabfragen verfügbar sind, finden Sie in der Referenzdokumentation zu Campaign.
Messwerte abfragen
Neben den ausgewählten Attributen für eine bestimmte Ressource können Sie auch zugehörige Messwerte abfragen:
SELECT
campaign.id,
campaign.name,
campaign.status,
metrics.impressions
FROM campaign
WHERE campaign.status = 'PAUSED'
AND metrics.impressions > 1000
ORDER BY campaign.id
Mit dieser Abfrage werden nur die Kampagnen mit dem Status PAUSED gefiltert, die mehr als 1.000 Impressionen erzielt haben. Die Ergebnisse werden nach Kampagnen-ID sortiert. Jeder resultierende GoogleAdsRow hätte ein metrics-Feld, das mit den ausgewählten Messwerten gefüllt ist.
Eine Liste der abfragbaren Messwerte finden Sie in der Metrics-Dokumentation.
Segmente abfragen
Neben den ausgewählten Attributen für eine bestimmte Ressource können Sie auch nach zugehörigen Segmenten suchen:
SELECT
campaign.id,
campaign.name,
campaign.status,
metrics.impressions,
segments.date
FROM campaign
WHERE campaign.status = 'PAUSED'
AND metrics.impressions > 1000
AND segments.date DURING LAST_30_DAYS
ORDER BY campaign.id
Ähnlich wie beim Abfragen von Messwerten werden in dieser Abfrage nur die Kampagnen gefiltert, die den Status PAUSED haben und mehr als 1.000 Impressionen erzielt haben. Bei dieser Abfrage werden die Daten jedoch nach Datum segmentiert. Jedes resultierende GoogleAdsRow steht für ein Tupel aus einer Kampagne und dem Datumssegment.
Beim Segmentieren werden die ausgewählten Messwerte aufgeteilt und nach jedem Segment in der SELECT-Klausel gruppiert.
Eine Liste der Segmente, die abgefragt werden können, finden Sie in der Segments-Dokumentation.
Attribute einer zugehörigen Ressource abfragen
In einer Abfrage für eine bestimmte Ressource können Sie unter Umständen Joins mit anderen zugehörigen Ressourcen ausführen, sofern diese verfügbar sind. Diese verknüpften Ressourcen werden als „Ressourcen mit Quellenangabe“ bezeichnet. Sie können implizit mit Attributressourcen verknüpfen, indem Sie ein Attribut in Ihrer Abfrage auswählen.
SELECT
campaign.id,
campaign.name,
campaign.status,
bidding_strategy.name
FROM campaign
ORDER BY campaign.id
Mit dieser Abfrage werden nicht nur Kampagnenattribute ausgewählt, sondern auch zugehörige Attribute aus jeder ausgewählten Kampagne abgerufen. Jedes resultierende GoogleAdsRow steht für ein campaign-Objekt, das mit den ausgewählten Kampagnenattributen sowie dem ausgewählten Attribut für die Gebotsstrategie bidding_strategy.name gefüllt ist.
Informationen dazu, welche zugehörigen Ressourcen für Kampagnenabfragen verfügbar sind, finden Sie in der Campaign-Referenzdokumentation.
Best Practices
- Wählen Sie nur die Felder aus, die Sie benötigen, um lange Antwortzeiten und Zeitüberschreitungen zu vermeiden.
- Verwenden Sie
LIMITwährend der Entwicklung und des Testens, um die Verarbeitung großer Ergebnismengen zu vermeiden. - Wenden Sie Filter in der
WHERE-Klausel an, um die Datenübertragung und die Antwortgröße zu minimieren. - Mit
GoogleAdsFieldServicekönnen Sie die Kompatibilität von Feldern und Datentypen prüfen, bevor Sie komplexe Abfragen erstellen. - Einige Felder, insbesondere solche, die große Datenmengen oder komplexe Berechnungen umfassen, können die Abfragekosten erhöhen.
Mutieren basierend auf Abfrageergebnissen
Wenn Sie eine bestimmte Ressource abfragen, können Sie die zurückgegebenen Ergebnisse sofort als Objekte verwenden, sie ändern und an die Mutate-Methode im Dienst dieser Ressource zurücksenden. Hier ein Beispiel für einen Workflow:
- Führen Sie eine Abfrage für alle
PAUSED-Kampagnen mit mehr als 1.000 Impressionen aus. - Rufen Sie das
Campaign-Objekt aus dem FeldcampaignjedesGoogleAdsRowin der Antwort ab. - Ändern Sie den Status der einzelnen Kampagnen von
PAUSEDinENABLED. - Rufen Sie
CampaignService.MutateCampaignsmit den geänderten Kampagnen und einem entsprechendenFieldMaskauf, um sie zu aktualisieren.
Feldmetadaten
Mit Anfragen, die an GoogleAdsFieldService gesendet werden, sollen Feldmetadaten abgerufen werden.
Anhand dieser Informationen können Sie nachvollziehen, wie die Felder in einer Abfrage zusammen verwendet werden können. Da Daten über die API verfügbar sind und die erforderlichen Metadaten zum Validieren oder Erstellen einer Abfrage bereitgestellt werden, können Entwickler dies programmatisch tun. Hier ist eine typische Anfrage für Metadaten:
SELECT
name,
category,
selectable,
filterable,
sortable,
selectable_with,
data_type,
is_repeated
WHERE name = "<INSERT_RESOURCE_OR_FIELD>"
Sie können <INSERT_RESOURCE_OR_FIELD> in dieser Abfrage durch eine Ressource (z. B. customer oder campaign) oder ein Feld (z. B. campaign.id, metrics.impressions oder ad_group.id) ersetzen.
Eine Liste der abfragbaren Felder finden Sie in der GoogleAdsField-Dokumentation.
Versionsspezifische Unterschiede
Die Syntax, Klauseln und Operatoren der Google Ads-Abfragesprache sind in allen unterstützten Google Ads API-Versionen (v23, v24 und v25) identisch. Der Katalog der abfragbaren Ressourcen, Segmente, Messwerte und Berichtsfunktionen unterscheidet sich jedoch je nach Hauptversion. Fragen Sie GoogleAdsFieldService am Endpunkt der Ziel-API-Version ab, um die Felder und Kompatibilitätsregeln für diese Version zu prüfen:
- Ressourcen für Zielvorhaben für den Kundenlebenszyklus:In Version 25 und höher werden alle Zielvorhaben für den Kundenlebenszyklus („Kundenakquisition“, „Kundenbindung“ und „Loyalty-Kundenbindung“) über die einheitlichen Ressourcen
goalundcampaign_goal_configabgefragt. Damit werdencustomer_lifecycle_goalundcampaign_lifecycle_goalersetzt, die in Version 24 und früher für Zielvorhaben für die Kundenakquisition verwendet wurden. Für Zielvorhaben für die Kundenbindung wurdengoalundcampaign_goal_configverwendet. - Messwerte für Assets mit Erweiterung der finalen URL:In Version 25 und höher werden bei der Abfrage von
final_url_expansion_asset_viewalle auswählbaren Messwerte für die Ansicht zurückgegeben. In Version 24 und früher enthalten Antworten nurmetrics.conversionsundmetrics.conversions_valuefür Performance Max-Kampagnen sowiemetrics.impressionsfür Suchkampagnen. - Shopping-Produktberichte für App-Kampagnen:In Version 24 und höher werden mit der Ressource
shopping_productzusätzlich zu Shopping-, Performance Max-, Demand Gen- und Videokampagnen auch Produktzeilen für App-Kampagnen zurückgegeben. In Version 23 sind App-Kampagnen in denshopping_product-Ergebnissen ausgeschlossen. - Versionsspezifische Ressourcen, Segmente und Messwerte:
- Version 25 und höher:Enthält Ressourcen für die Analyse der Anzeigenwirkung (z. B.
lift_measurement_config), Segmente wiesegments.ad_sub_format_typeundsegments.loyalty_membershipsowie YouTube-Messwerte zum Engagement (metrics.youtube_likes,metrics.youtube_commentsundmetrics.youtube_shares).local_services_lead.contact_details.emailwird entfernt (in Version 24 und früher auswählbar). - Version 24 und höher:Enthält die Ressource
cart_data_sales_view,segments.conversion_attribution_event_typeaufshopping_performance_view,segments.mobile_device_platformundsegments.ad_network_typeaufperformance_max_placement_view. Entferntcampaign.video_brand_safety_suitability(ersetzt durchcustomer.video_brand_safety_suitability),segments.ad_sub_network_typeaufcampaign_budgetundsegments.click_typeaufad_group_asset,campaign_assetundcustomer_asset(die nur in Version 23 ausgewählt werden können).
- Version 25 und höher:Enthält Ressourcen für die Analyse der Anzeigenwirkung (z. B.
- Fehlercode für detaillierte Datenrückschau: Abfragen, die nach
segments.date,segments.weekodersegments.hoursegmentieren (oder nach einem Zeitraum filtern, der kürzer als ein Monat ist) und über das 37-Monats-Lookback-Window hinausgehen, geben in Version 24 und höherDateRangeError.REQUESTED_DATE_GRANULARITY_NOT_SUPPORTEDzurück (oderDateRangeError.UNKNOWNin Version 23). Weitere Informationen finden Sie unter Zeiträume.
Codebeispiele
In den Clientbibliotheken finden Sie Beispiele für die Verwendung der Google Ads-Abfragesprache in GoogleAdsService. Der Ordner basic operations enthält Beispiele wie GetCampaigns, GetKeywords und SearchForGoogleAdsFields.