Noms de ressources

L'identifiant unique d'une entité dans l'API Google Ads est appelé nom de ressource. Il est représenté sous la forme d'une chaîne au format prévisible. Si vous connaissez les composants constituant un nom de ressource, vous pouvez générer des noms de ressources à l'aide de méthodes d'assistance présentes sur de nombreux objets Service.

Méthodes de chemin de service

Tous les services conçus pour gérer la lecture ou la modification de types d'objets spécifiques dans l'API disposent de méthodes d'assistance pour faciliter la création de noms de ressources. Par exemple, pour créer un nom de ressource pour un objet Campaign:

from google.ads.googleads.client import GoogleAdsClient

client = GoogleAdsClient.load_from_storage()
customer_id = "7892134783"
campaign_id = "1234567890"
campaign_service = client.get_service("CampaignService")
resource_name = campaign_service.campaign_path(customer_id, campaign_id)

À partir de la version 10.0.0 de la bibliothèque cliente, chaque service est également accompagné d'une méthode parse_*_path qui déconstruit un nom de ressource en segments individuels, par exemple:

from google.ads.googleads.client import GoogleAdsClient

client = GoogleAdsClient.load_from_storage()
resource_name = "customers/7892134783/campaigns/1234567890"
campaign_service = client.get_service('CampaignService')
segments = campaign_service.parse_campaign_path(resource_name)
customer_id = segments["customer_id"]
campaign_id = segments["campaign_id"]

Noms de ressources composites

À partir de la version 9.0.0 de la bibliothèque cliente, les assistants de chemin d'accès des services construisent des segments composites d'un nom de ressource. Les différents segments de l'ID composite sont acceptés en tant que paramètres individuels dans la méthode:

from google.ads.google_ads.client import GoogleAdsClient

customer_id = "0987654321"
ad_group_id = "1234567890"
criterion_id = "74932"

client = GoogleAdsClient.load_from_storage()
ad_group_criterion_service = client.get_service("AdGroupCriterionService")

# An AdGroupCriterion resource name that uses the above IDs looks like this:
# "customers/0987654321/adGroupCriteria/1234567890~74932"
resource_name = ad_group_criterion_service.ad_group_criterion_path(
    customer_id, ad_group_id, criterion_id
)

Versions antérieures à 9.0.0

Avant la version 9.0.0, les assistants de chemin d'accès des services ne construisent pas le segment composite d'un nom de ressource. Ces segments doivent être fournis par l'appelant. La bibliothèque cliente dispose d'un petit utilitaire pour vous aider:

from google.ads.google_ads.client import GoogleAdsClient
from google.ads.google_ads.util import ResourceName

customer_id = "0987654321"
ad_group_id = "1234567890"
criterion_id = "74932"

client = GoogleAdsClient.load_from_storage()
ad_group_criterion_service = client.get_service("AdGroupCriterionService")

# An AdGroupCriterion resource name that uses the above IDs looks like this:
# "customers/0987654321/adGroupCriteria/1234567890~74932"
composite_id = ResourceName.format_composite(ad_group_id, criterion_id)
resource_name = ad_group_criterion_service.ad_group_criterion_path(
    customer_id, composite_id
)