Modification et inspection d'objets

Comme indiqué dans le guide de structure de l'API, chaque ressource de premier niveau de l'API Google Ads est associée à un service spécifique au type de ressource qui prend en charge les éléments suivants:

  • Modifier des instances de la ressource
  • Récupérer une seule instance de la ressource à des fins d'inspection

Ce guide utilise CampaignService pour illustrer la modification et l'inspection des objets Campaign, mais les mêmes concepts s'appliquent à tous les autres services spécifiques au type de ressource.

Modifier des objets

Chaque service spécifique au type de ressource dispose d'une méthode mutate qui accepte une requête de modification. Cette requête se compose des éléments suivants:

  • customerId
  • Ensemble d'opérations
  • Paramètre de type de contenu de réponse qui détermine si la ressource modifiable ou simplement le nom de la ressource doit être renvoyé après la mutation.

Par exemple, la méthode MutateCampaigns de CampaignService accepte un MutateCampaignsRequest qui se compose des éléments suivants:

  • customerId
  • Collection d'objets CampaignOperation
  • Champ response_content_type indiquant le type de réponse préféré.

Opérations

Un objet d'opération tel qu'un CampaignOperation vous permet de spécifier l'action que vous souhaitez effectuer sur une seule ressource en définissant son champ operation. Ce champ est un champ oneof composé des attributs suivants, dont le type est le type de ressource:

create
Crée une instance de la ressource.
update
Met à jour la ressource pour qu'elle corresponde aux attributs de la ressource update. Lorsque ce champ est défini, vous devez également définir le update_mask de l'opération, qui indique à l'API Google Ads les attributs à modifier lors de l'opération de mise à jour. Chaque bibliothèque cliente dispose d'une méthode utilitaire ou d'assistance qui génère le update_mask pour vous, comme illustré dans nos bibliothèques clientes.
remove
Supprime la ressource.

Comme le champ operation est un champ oneof, vous ne pouvez pas utiliser une seule opération pour modifier plusieurs objets. Par exemple, si vous souhaitez créer une campagne et supprimer une autre, ajoutez deux instances de CampaignOperation à votre requête: l'une avec create défini et l'autre avec remove défini.

Opérations par lots

Bien qu'une seule opération ne puisse créer, mettre à jour ou supprimer qu'une seule ressource, une seule requête de modification peut contenir plusieurs opérations. Vous devez combiner vos opérations dans une seule requête de modification au lieu d'envoyer plusieurs requêtes de modification contenant chacune une seule opération.

Par exemple, si vous souhaitez créer dix campagnes, vous devez envoyer un MutateCampaignsRequest unique contenant dix objets CampaignOperation.

Modifier les réponses

Ce qui est renvoyé dans la réponse dépend de ce qui a été envoyé dans le response_content_type de la requête de modification. Par exemple, si MUTABLE_RESOURCE a été spécifié, la réponse ne contiendra que les champs modifiables de la campagne. Vous pouvez ensuite effectuer des modifications ultérieures sur cet objet de ressource sans avoir à le reconstruire.

Erreurs de mutation

Les opérations d'une requête de modification donnée ne sont appliquées à votre compte Google Ads que si toutes les opérations de la requête aboutissent. Consultez le guide des erreurs courantes pour obtenir la liste des erreurs courantes et savoir comment les résoudre.

Inspecter des objets avec get (obsolète)

En plus de modifier des objets, chaque service spécifique au type de ressource dispose également d'une méthode get permettant de récupérer tous les attributs d'une seule ressource. Cette méthode accepte une requête GET dont le seul attribut est resource_name.

Les méthodes get sont une fonctionnalité proposée par l'API Google Ads pour récupérer tous les attributs d'un seul objet. Bien que cet outil soit excellent pour apprendre l'API ou inspecter un objet individuel à des fins de débogage ou d'apprentissage, votre application ne doit pas utiliser de méthodes get pour récupérer des objets à des fins de traitement ou de création de rapports. Utilisez plutôt GoogleAdsService, car il ne vous permet de récupérer que des attributs spécifiques des objets, accepte la récupération de métriques de performances et permet le streaming via de grands ensembles de résultats. Si votre application envoie un grand nombre de requêtes get, vous pouvez rencontrer des limites de débit.