תכונה חשובה של BatchJobService
היא התמיכה בשימוש במזהים זמניים.
כדי לעשות זאת, צריך לציין את resource_name
של המשאב החדש כדי להשתמש במזהה שלילי. לדוגמה, נניח שאתם יוצרים קמפיין ומציינים את שם המשאב שלו כ-customers/<YOUR_CUSTOMER_ID>/campaigns/-1
. כשיוצרים את קבוצת המודעות בפעולה מאוחרת יותר, אפשר להפנות אליה באמצעות שם המשאב הזה, והמערכת תחליף אוטומטית את -1
שציינתם במזהה בפועל של הקמפיין שנוצר.
ריכזנו כמה דברים שחשוב לזכור כשמשתמשים בשמות זמניים של משאבים:
- אפשר להשתמש בשם משאב זמני רק אחרי שהוא מוגדר במשאב. בדוגמה הבאה, הפעולה של קבוצת המודעות צריכה להופיע אחרי הפעולה של הקמפיין ברשימת הפעולות.
- שמות משאבים זמניים לא נשמרים בין משימות או בקשות לשינוי. כדי להפנות למשאב שנוצר בעבודה קודמת או בבקשת שינוי, צריך להשתמש בשם המשאב בפועל.
- בבקשה יחידה של עבודה או שינוי, כל שם משאב זמני חייב להיות מספר שלילי ייחודי, גם אם הם מסוגי משאבים שונים. אם מזהה זמני נעשה בו שימוש חוזר במשימה יחידה או בבקשת שינוי, תוחזר שגיאה.
דוגמה
נניח שאתם רוצים להוסיף קמפיין, קבוצת מודעות ומודעה בבקשת API אחת. יוצרים מבנה לבקשה שדומה למבנה הבא:
mutate_operations: [
{
campaign_operation: {
create: {
resource_name: "customers/<YOUR_CUSTOMER_ID>/campaigns/-1",
...
}
}
},
{
ad_group_operation: {
create: {
resource_name: "customers/<YOUR_CUSTOMER_ID>/adGroups/-2",
campaign: "customers/<YOUR_CUSTOMER_ID>/campaigns/-1"
...
}
}
},
{
ad_group_ad_operation: {
create: {
ad_group: "customers/<YOUR_CUSTOMER_ID>/adGroups/-2"
...
}
}
},
]
מערכת Google Ads משתמשת במזהה זמני חדש לקבוצת המודעות, כי אי אפשר להשתמש שוב במזהה -1
שבו השתמשנו לקמפיין. אנחנו גם מתייחסים לקבוצת המודעות הזו כשיוצרים מודעה ברמת קבוצת המודעות. קבוצת המודעות עצמה מפנה לשם המשאב שהגדרנו לקמפיין בפעולה קודמת בבקשה, ואילו resource_name
ב-ad_group_ad_operation
לא נחוץ כי אין פעולה נוספת שמפנה אליו.