Extensions d'annonce

Les scripts Google Ads sont compatibles avec les extensions d'annonce suivantes:

Pour en savoir plus sur les extensions d'annonce, consultez le Centre d'aide.

Les scripts Google Ads vous permettent d'accéder aux extensions d'annonce compatibles de votre compte. Par exemple, l'extrait de code suivant accède aux liens annexes:

const sitelinkIterator = AdsApp.extensions().sitelinks().get();
for (const sitelink of sitelinkIterator) {
  // Do something with each sitelink
}

Vous pouvez récupérer d'autres extensions d'annonce compatibles de la même manière en utilisant leurs itérateurs respectifs.

Création

Les scripts Google Ads vous permettent de créer des extensions d'annonce compatibles. Par exemple, l'extrait de code suivant utilise un outil de création de numéros de téléphone pour créer un numéro de téléphone dans votre compte:

const phoneNumberBuilder = AdsApp.extensions().newPhoneNumberBuilder();
const newPhoneNumber = phoneNumberBuilder
  .withCountry("US")
  .withPhoneNumber("6502530000")
  .withCallOnly(false)
  .build()
  .getResult();

Lorsque build() est appelé, le numéro de téléphone est créé dans le compte, mais il n'apparaît pour le moment dans aucune annonce. Vous devez d'abord l'ajouter à une campagne ou à un groupe d'annonces:

// Add a phone number to a campaign.
campaign.addPhoneNumber(newPhoneNumber);

// Add a phone number to an ad group.
adGroup.addPhoneNumber(newPhoneNumber);

Pour créer d'autres extensions d'annonces compatibles, et les associer à des campagnes ou des groupes d'annonces, vous pouvez procéder de la même manière à l'aide de leurs outils de création respectifs.

Affichage de statistiques

Les scripts Google Ads vous permettent d'accéder aux statistiques des extensions d'annonces compatibles au niveau du compte, de la campagne ou du groupe d'annonces.

Par exemple, pour obtenir les statistiques relatives aux liens annexes :

// Account-level stats
// Get a sitelink in the account.
const sitelinkIterator = AdsApp.extensions().sitelinks().get();
const sitelink = sitelinkIterator.next();
const sitelinkStats = sitelink.getStatsFor("LAST_30_DAYS");
console.log(sitelinkStats.getClicks());

// Campaign-level stats.
// Get a sitelink in a campaign.
const campaignSitelinkIterator = campaign.extensions().sitelinks().get();
const campaignSitelink = campaignSitelinkIterator.next();
const campaignSitelinkStats = campaignSitelink.getStatsFor("LAST_30_DAYS");
console.log(campaignSitelinkStats.getClicks());

// Ad-group-level stats.
// Get a sitelink in an ad group.
const adGroupSitelinkIterator = adGroup.extensions().sitelinks().get();
const adGroupSitelink = adGroupSitelinkIterator.next();
const adGroupSitelinkStats = adGroupSitelink.getStatsFor("LAST_30_DAYS");
console.log(adGroupSitelinkStats.getClicks());

Vous pouvez accéder aux statistiques des autres extensions d'annonces compatibles de la même manière.

Modification des extensions d'annonce

Vous pouvez modifier les extensions d'annonce compatibles existantes à l'aide de scripts Google Ads. Par exemple, l'extrait de code suivant modifie un lien annexe existant:

// Get a sitelink in the account.
const sitelinkIterator = AdsApp.extensions().sitelinks().get();
const sitelink = sitelinkIterator.next();
console.log(sitelink.getLinkText()); // "original text"

// Get a sitelink from a campaign. Assume it's the same one as above.
const campaignSitelinkIterator = campaign.extensions().sitelinks().get();
const campaignSitelink = campaignSitelinkIterator.next();
console.log(campaignSitelink.getLinkText()); // "original text"

// Get a sitelink from an ad group. Assume it's the same one as above.
const adGroupSitelinkIterator = adGroup.extensions().sitelinks().get();
const adGroupSitelink = adGroupSitelinkIterator.next();
console.log(adGroupSitelink.getLinkText()); // "original text"

// Change the sitelink's link text. This change will affect all the campaigns
// and ad groups to which the sitelink belongs.
campaignSitelink.setLinkText("new link text");

// Same text!
console.log(campaignSitelink.getLinkText()); // "new link text"
console.log(adGroupSitelink.getLinkText()); // "new link text"
console.log(sitelink.getLinkText()); // "new link text"

Les mêmes concepts s'appliquent aux autres extensions d'annonces compatibles.

Accéder aux extensions d'annonce au niveau du groupe d'annonces

Les scripts Google Ads vous permettent d'accéder aux extensions d'annonce au niveau du groupe d'annonces. L'appel de méthode suivant renvoie les numéros de téléphone qui ont été explicitement ajoutés à un groupe d'annonces. Notez que si les numéros de téléphone ont été ajoutés à la campagne à laquelle appartient le groupe d'annonces, l'appel de la méthode suivant ne les renverra pas, même si les numéros de téléphone sont susceptibles d'apparaître dans les annonces diffusées à partir de ce groupe d'annonces.

// This will return phone numbers that have been explicitly added to this
// ad group.
const adGroupPhoneNumberIterator = adGroup.extensions().phoneNumbers().get();

Vous pouvez accéder aux autres extensions d'annonce compatibles au niveau du groupe d'annonces en suivant la même procédure.

Accéder aux extensions d'annonce au niveau du compte

Les scripts Google Ads vous permettent d'accéder aux extensions d'annonce au niveau du compte. Les accroches, les applications mobiles et les avis peuvent être ajoutés en tant qu'extensions d'annonce au niveau du compte, mais les liens annexes et les numéros de téléphone au niveau du compte ne sont pas disponibles. L'appel de méthode suivant renvoie les accroches qui ont été ajoutées explicitement à votre compte.

// This will return callouts that have been explicitly added to your account.
const accountCalloutIterator =
    AdsApp.currentAccount().extensions().callouts().get();

Vous pouvez procéder de la même manière pour accéder aux applications mobiles et aux avis au niveau du compte.

L'ajout d'extensions d'annonces au niveau du compte est semblable à l'ajout d'extensions au niveau de la campagne ou du groupe d'annonces. L'exemple suivant montre comment ajouter une extension d'accroche au niveau du compte:

// Create a new callout in the account. Without adding the new callout as an ad
// group, campaign or account extension, it won't actually serve.
const calloutBuilder = AdsApp.extensions().newCalloutBuilder();
const newCallout = calloutBuilder.withText("Sample Text").build().getResult();

// Add the new callout as an account-level extension. This enables it to serve
// for all campaigns in the account.
AdsApp.currentAccount().addCallout(newCallout);

Vous pouvez procéder de la même manière pour ajouter des applications mobiles et des avis au niveau du compte.

Suppression des extensions d'annonce au niveau de la campagne, du groupe d'annonces et du compte

Les extensions d'annonce compatibles peuvent être supprimées des campagnes et des groupes d'annonces au niveau du compte. Il est impossible de supprimer simultanément toutes les extensions d'annonce d'un compte à l'aide de scripts Google Ads.

// Get a mobile app from a campaign.
const campaignMobileAppIterator = campaign.extensions().mobileApps().get();
const campaignMobileApp = campaignMobileAppIterator.next();

// Remove the mobile app.
campaign.removeMobileApp(campaignMobileApp);

// The mobile app still exists in the account and will be returned in the
// following iterator.
const mobileAppIterator = AdsApp.extensions().mobileApps().get();

De même, pour supprimer une application pour mobile au niveau du groupe d'annonces ou du compte:

// Get a mobile app from an ad group.
const adGroupMobileAppIterator = adGroup.extensions().mobileApps().get();
const adGroupMobileApp = adGroupMobileAppIterator.next();

// Remove the mobile app.
adGroup.removeMobileApp(adGroupMobileApp);

// Get an account-level mobile app.
const accountMobileAppIterator =
    AdsApp.currentAccount().extensions().mobileApps().get();
const accountMobileApp = accountMobileAppIterator.next();

// Remove the mobile app.
// Note that this removes the mobile app from the account level, so it will
// not serve as an account-level extension, but it will still exist in the
// account. It can still be added to an AdGroup or Campaign, or again as an
// account-level extension in the future.
AdsApp.currentAccount().removeMobileApp(accountMobileApp);

Si toutes les applications mobiles sont supprimées d'une campagne, celle-ci ne disposera plus d'une extension d'application mobile. Pour supprimer toutes les applications mobiles de votre campagne, vous devez récupérer la liste des applications mobiles de cette campagne et les supprimer une par une. La procédure à suivre est la même pour les autres extensions d'annonce compatibles.