GoogleAdsService est le service unifié de récupération et de création de rapports d'objets de l'API Google Ads. Le service comporte des méthodes qui :
- Récupérer des attributs spécifiques d'objets.
- Récupérez les métriques de performances pour les objets en fonction d'une plage de dates.
- Ordonnez les objets en fonction de leurs attributs.
- Utilisez des conditions pour indiquer les objets que vous souhaitez voir renvoyés dans la réponse.
- Limitez le nombre d'objets renvoyés.
La GoogleAdsService peut renvoyer des résultats de deux manières :
GoogleAdsService.SearchStreamrenvoie toutes les lignes dans une seule réponse de flux, ce qui est plus efficace pour les ensembles de résultats volumineux (plus de 10 000 lignes). Cette option est recommandée si votre application télécharge des ensembles de résultats complets ou traite les lignes sous forme de flux.GoogleAdsService.Searchdivise les longues réponses en pages de résultats gérables. Cette méthode est utile si votre application interactive affiche une page de résultats à la fois.
En savoir plus sur la pagination et le streaming
Envoyer une requête
GoogleAdsService.SearchStream
attend un
SearchGoogleAdsStreamRequest,
et GoogleAdsService.Search attend un
SearchGoogleAdsRequest. Les deux types de demandes incluent :
customer_idquerydu langage de requête Google Ads indiquant la ressource à interroger, les attributs, les segments et les métriques à récupérer, ainsi que les conditions à utiliser pour limiter les objets renvoyés
Selon la méthode, la requête accepte également des champs spécifiques à la méthode :
SearchGoogleAdsStreamRequest(SearchStreamuniquement) :summary_row_settingfacultatif pour demander une ligne récapitulative contenant des métriques agrégées
SearchGoogleAdsRequest(Searchuniquement) :page_tokenfacultatif pour récupérer le lot de résultats suivant lors de l'utilisation de la pagination (page_sizeest fixé à 10 000 lignes ; la définition depage_sizedans la requête génère une erreurRequestError.PAGE_SIZE_NOT_SUPPORTED)- Message
search_settingsfacultatif pour configurerreturn_summary_row,return_total_results_countetomit_results - Valeur booléenne
validate_onlyfacultative permettant de valider la requête sans l'exécuter
Pour en savoir plus sur le langage de requête Google Ads, consultez le guide sur le langage de requête Google Ads.
Traiter une réponse
GoogleAdsService renvoie une liste d'objets GoogleAdsRow (dans des lots SearchGoogleAdsStreamResponse diffusés ou dans un SearchGoogleAdsResponse paginé).
Chaque GoogleAdsRow représente un objet renvoyé par une requête et se compose d'un ensemble d'attributs renseignés en fonction des champs demandés dans la clause SELECT. Les attributs non inclus dans la clause SELECT ne sont pas renseignés dans les objets GoogleAdsRow de la réponse.
Par exemple, bien qu'un ad_group_criterion comporte un attribut status, le champ status de l'attribut ad_group_criterion de la ligne n'est pas renseigné dans une réponse à une requête dont la clause SELECT n'inclut pas ad_group_criterion.status. De même, l'attribut campaign de la ligne n'est pas renseigné si la clause SELECT n'inclut aucun champ de la ressource campaign.
Chaque GoogleAdsRow peut avoir des attributs et des métriques différents de ceux d'une autre ligne du même ensemble de résultats. Les lignes doivent donc être considérées comme des objets plutôt que comme des lignes fixes d'un tableau.
Types d'énumération UNKNOWN et UNSPECIFIED
Les ressources renvoyées avec une valeur d'énumération UNKNOWN ne sont pas entièrement compatibles avec cette version de l'API, tandis que UNSPECIFIED indique qu'un champ d'énumération n'a pas été défini ou n'a pas été demandé dans la clause SELECT. Les ressources avec une valeur d'énumération UNKNOWN peuvent avoir été créées via d'autres interfaces, comme l'UI Google Ads. Vous pouvez sélectionner des métriques lorsqu'une ressource est de type UNKNOWN, mais vous ne pouvez pas modifier la ressource via l'API. Par exemple, un type de campagne ou un type d'annonce disponible dans l'UI peut ne pas être compatible avec la version de l'API que vous interrogez.
Voici quelques points à prendre en compte :
- Une ressource de type
UNKNOWNpeut être compatible avec une version ultérieure de l'API ou resterUNKNOWNindéfiniment. - De nouveaux objets de type
UNKNOWNpeuvent apparaître à tout moment. Ces objets sont rétrocompatibles, car la valeur d'énumérationUNKNOWNest présente dans chaque énumération de l'API. Les ressources sont renvoyées avecUNKNOWNpour que vous puissiez obtenir une vue précise des métriques de performances globales de votre compte. - Des métriques détaillées peuvent être associées aux ressources
UNKNOWNet peuvent faire l'objet de requêtes. - Les composants
UNKNOWNsont généralement entièrement visibles dans l'UI Google Ads. - En général, les ressources
UNKNOWNne peuvent pas être modifiées via l'API.
Segmentation
La réponse contient un GoogleAdsRow pour chaque combinaison des éléments suivants :
- Instance de la ressource principale spécifiée dans la clause
FROM - Valeur de chaque champ
segmentssélectionné
Par exemple, la réponse à une requête qui sélectionne FROM campaign et qui comporte segments.ad_network_type et segments.date dans la clause SELECT contient une ligne pour chaque combinaison des éléments suivants :
campaignsegments.ad_network_typesegments.date
Les résultats sont segmentés de manière implicite par chaque instance de la ressource principale, et non par les valeurs des champs individuels sélectionnés. Par exemple,
SELECT campaign.status, metrics.impressions
FROM campaign
WHERE segments.date DURING LAST_14_DAYS
Les résultats sont présentés sur une ligne par campagne, et non sur une ligne par valeur distincte du champ campaign.status.