שמות המשאבים

המזהה הייחודי של ישות ב-Google Ads API נקרא שם משאב, והוא מיוצג כמחרוזת עם פורמט ניתן לחיזוי. אם אתם יודעים את הרכיבים שמהם מורכבות שם משאב, אתם יכולים ליצור שמות משאבים באמצעות שיטות מסייעות שקיימות באובייקטים רבים של שירות.

שיטות נתיב שירות

לכל השירותים שנועדו לטפל בקריאה או בשינוי של סוגים מסוימים של אובייקטים ב-API יש שיטות מסייעות שמקלות על יצירה של שמות_משאבים. לדוגמה, יצירת שם משאב לאובייקט 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)

החל מגרסה 10.0.0 של ספריית הלקוח, לכל שירות יש גם שיטה parse_*_path נלווה שמנתחת פרמטר resource_name לפלחים הנפרדים שלו. לדוגמה:

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

שמות משאבים מרוכבים

החל מגרסה 9.0.0 של ספריית הלקוח, כלי העזר לנתיב בשירותים בונים פלחים מורכבים של שם המשאב. הקטעים השונים של המזהה המרוכב מתקבלים כפרמטרים נפרדים בשיטה:

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
)

גרסאות שקודמות ל-9.0.0

לפני גרסה 9.0.0, כלי העזר לנתיב בשירותים לא בנו את המקטע המורכב של שם משאב. המתקשר צריך לספק את הפלחים האלה. ספריית הלקוח כוללת כלי עזר קטן שיכול לעזור בכך:

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
)