La plupart des entités Google Ads exposent une méthode getId()
qui renvoie leur identifiant. Bien que cela ne soit pas strictement nécessaire dans la plupart des cas, les ID peuvent être utiles lorsque
- Utiliser les rapports
- Les ID permettent d'associer une ligne de rapport à l'entité Google Ads correspondante.
- Gérer un mappage avec un data store externe
- Il est possible que vous ayez déjà des informations basées sur des ID stockées dans votre propre base de données.
- Amélioration des performances
L'extraction de données à partir d'identifiants est souvent la méthode la plus rapide. Le code permettant de récupérer une seule entité est également un peu plus simple :
let campaigns = AdsApp.campaigns() .withIds([678678]) .get(); // versus let campaigns = AdsApp.campaigns() .withCondition("Name='My Campaign'") .get();
Unicité
Les ID de campagne et de groupe d'annonces sont uniques. Deux campagnes ou groupes d'annonces ne peuvent pas partager le même ID. Toutefois, les annonces et les mots clés ont des ID composites : l'identifiant unique d'un mot clé est une combinaison de son ID de groupe d'annonces et de son ID de mot clé.
De même, l'identifiant unique d'une annonce est une combinaison de l'ID de son groupe d'annonces et de son ID d'annonce. Cela a des conséquences sur la façon dont selector.withIds()
est appelé.
Pour les campagnes et les groupes d'annonces, selector.withIds()
attend un tableau de nombres :
let ids = [123123, 234234, 345345];
let campaignSelector = AdsApp.campaigns().withIds(ids);
Toutefois, pour les annonces et les mots clés, selector.withIds()
a besoin d'un tableau de tableaux à deux éléments, le premier étant l'ID du groupe d'annonces. L'extrait de code suivant récupère trois mots clés d'un groupe d'annonces :
let adGroupId = 123123;
let keywordSelector = AdsApp.keywords().withIds([
[adGroupId, 234234],
[adGroupId, 345345],
[adGroupId, 456456]
]);
La même construction s'applique lors de la récupération des annonces.
ID temporaires
Lorsque vous travaillez avec une requête mutate comportant plusieurs opérations, vous devez parfois utiliser des ID temporaires pour associer les ressources les unes aux autres, car les noms de ressources complets ne seront disponibles qu'une fois que vous aurez reçu la réponse de l'API. Les ID temporaires doivent être des nombres négatifs commençant par -1 et ne peuvent pas se répéter dans la même requête mutate. Pour utiliser efficacement les ID temporaires, vous devrez écrire du code pour vous assurer de ne pas créer d'ID temporaires en double :
let nextId = -1;
function getNextTempId() {
const ret = nextId;
nextId -= 1;
return ret;
}
Chaque appel successif à getNextTempId
renverra un nombre inférieur de un à celui de l'appel précédent. Étant donné que tous les ID temporaires doivent être négatifs, commencez par -1.
Les ID temporaires ne sont pas mémorisés entre les tâches ni les requêtes de modification. Pour référencer une ressource créée dans une requête mutate précédente, utilisez son nom de ressource réel.