Nombres de recursos

El identificador único de una entidad en la API de Google Ads se denomina recurso y se representa como una cadena con un formato predecible. Si sabes componentes constituyentes de un nombre de recurso, puedes generar nombres de recursos con métodos auxiliares presentes en muchos objetos Service.

Métodos de ruta de servicio

Todos los servicios diseñados para manejar la lectura o mutación de tipos específicos de Los objetos de la API tienen métodos de ayuda que facilitan la construcción resource_names Por ejemplo, si creas un nombre de recurso para un objeto 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)

A partir de la versión 10.0.0 de la biblioteca cliente, cada servicio también cuenta con una parse_*_path complementario que deconstruya un resource_name en su segmentos individuales, como los siguientes:

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"]

Nombres de recursos compuestos

A partir de la versión 9.0.0 de la biblioteca cliente, los asistentes de ruta de acceso en los servicios para construir segmentos compuestos con el nombre de un recurso. Los diferentes segmentos del Los ID compuestos se aceptan como parámetros individuales en el método:

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
)

Versiones anteriores a 9.0.0

Antes de la versión 9.0.0, los asistentes de ruta de los servicios no construyen el segmento compuesto de un nombre de recurso. Esos segmentos deben ser proporcionados por el llamador. La biblioteca cliente tiene una pequeña utilidad para ayudar con esto:

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
)