Noms de ressources

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

Méthodes du chemin d'accès du service

Tous les services conçus pour gérer la lecture ou la mutation de types spécifiques d'objets dans l'API disposent de méthodes d'assistance qui facilitent la construction de resource_names. Par exemple, vous pouvez 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 associé à une méthode parse_*_path qui décompose un resource_name en ses 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 sur les 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 sur les services ne construisaient 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 qui peut 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
)