שימוש במזהים זמניים

אחד הפיצ'רים הגדולים של 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"
        ...
      }
    }
  },
]

שים לב שבקבוצת המודעות נעשה שימוש במזהה זמני חדש, מכיוון שלא ניתן להשתמש בו שוב -1 שבהם השתמשנו בקמפיין, וגם נתייחס לקבוצת המודעות הזו כאשר יצירת מודעה בקבוצת מודעות. קבוצת המודעות עצמה מפנה לשם המשאב שהזכרנו שהוגדר עבור הקמפיין בפעולה קודמת בבקשה, ואילו אין צורך בresource_name בad_group_ad_operation כי לא שמתייחסת אליו.