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
)