Noms de ressources

Dans l'API Google Ads, l'identifiant unique d'une entité est appelé "nom de ressource". Il est représenté par une chaîne de 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 au service

Tous les services conçus pour gérer la lecture ou la mutation 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, 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 nom de ressource 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 à partir 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 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
)