שינוי

רוב המשאבים משתנים (נוצרו, עודכנו או הוסרו) באמצעות Mutate . ה-method Mutate מופעלת כ-HTTP POST למשאב ספציפי כתובת URL שתואמת לתבנית של שם המשאב, בלי מזהה המשאב בסוף. המזהים של המשאבים שצריך לבצע בהם שינוי נשלחים בבקשת ה-JSON במקום זאת. גוף ההודעה. כך אפשר לשלוח קריאה אחת ל-API שכוללת כמה פעולות על במשאבים שונים.

לדוגמה, שם המשאב של הקמפיין בפורמט הבא:

customers/CUSTOMER_ID/campaigns/CAMPAIGN_ID

כדי להסיק את כתובת ה-URL ששימשה לשינוי הקמפיינים, יש להשמיט את מזהה המשאב הסופי צירוף :mutate:

https://googleads.googleapis.com/v17/customers/CUSTOMER_ID/campaigns:mutate

הודעת Mutate מכילה אובייקט JSON ברמה העליונה עם מערך operations יכול להכיל הרבה אובייקטים מסוג operation. כל פעולה יכולה להיות אחת מתוך: create, update או remove. אלה השינויים היחידים שאפשר לשנות ב-AI.

POST /v17/customers/CUSTOMER_ID/campaigns:mutate HTTP/1.1
Host: googleads.googleapis.com
Content-Type: application/json
Authorization: Bearer ACCESS_TOKEN
developer-token: DEVELOPER_TOKEN

{
  "operations": [
    ...
  ]
}

רוב השירותים תומכים באלפי פעולות בקריאה אחת ל-API. המערכת הנחיות למגבלות מגבלות על גודל הבקשות.

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

יצירה

פעולות יוצרים יוצרות ישויות חדשות וחייבות לכלול JSON מלא ייצוג בווקטור של המשאב שאתם מתכוונים ליצור.

POST /v17/customers/CUSTOMER_ID/campaigns:mutate HTTP/1.1
Host: googleads.googleapis.com
Content-Type: application/json
Authorization: Bearer ACCESS_TOKEN
developer-token: DEVELOPER_TOKEN

{
  "operations": [
    {
    "create": {
        "name": "An example campaign",
        "status": "PAUSED",
        "campaignBudget": "customers/CUSTOMER_ID/campaignBudgets/CAMPAIGN_BUDGET_ID",
        "advertisingChannelType": "SEARCH",
        "networkSettings": {
          "targetGoogleSearch": true,
          "targetSearchNetwork": true,
          "targetContentNetwork": true,
          "targetPartnerSearchNetwork": false
        },
        "target_spend": {}
      }
    }
  ]
}

עדכון

פעולות עדכון מבצעות עדכונים מועטים למשאב קיים. צריך רק כדי לציין את השדות שרוצים לשנות.

כדי לציין את השדות שרוצים לעדכן, צריך להגדיר את המאפיין updateMask בתור רשימה של שמות שדות שמופרדים בפסיקים. אפשרות זו שימושית במיוחד אם כבר קיים באובייקט JSON בפורמט מלא (לדוגמה, שהוחזרו על-ידי קריאה קודמת ל-API), אבל רוצים לשנות רק שדות מסוימים. במקום לקצץ את אובייקט ה-JSON, אפשר פשוט לרשום את שמות השדות שונה ב-updateMask ולשלוח את אובייקט ה-JSON כולו.

הדוגמה הבאה משנה את המאפיינים name ו-status של קמפיין קיים עם resourceName הנתון.

POST /v17/customers/CUSTOMER_ID/campaigns:mutate HTTP/1.1
Host: googleads.googleapis.com
Content-Type: application/json
Authorization: Bearer ACCESS_TOKEN
developer-token: DEVELOPER_TOKEN

{
  "operations": [
    {
      "updateMask": "name,status",
      "update": {
        "resourceName": "customers/CUSTOMER_ID/campaigns/CAMPAIGN_ID",
        "name": "My renamed campaign",
        "status": "PAUSED",
      }
    }
  ]
}

הסרה

הסרת פעולות שמוחקות אובייקט ביעילות והגדרת הסטטוס שלו ב-Google Ads בתור REMOVED חובה להסיר רק את השדה resourceName.

POST /v17/customers/CUSTOMER_ID/campaigns:mutate HTTP/1.1
Host: googleads.googleapis.com
Content-Type: application/json
Authorization: Bearer ACCESS_TOKEN
developer-token: DEVELOPER_TOKEN

{
  "operations": [
    {
      "remove": "customers/CUSTOMER_ID/campaigns/CAMPAIGN_ID"
    }
  ]
}