جهش پیدا کند

اکثر منابع با استفاده از روش Mutate اصلاح می شوند (ایجاد، به روز یا حذف می شوند). متد Mutate به عنوان یک HTTP POST به یک URL خاص منبع که با الگوی نام منبع مطابقت دارد، بدون شناسه منبع دنباله‌ای فراخوانی می‌شود. شناسه‌های منابعی که باید جهش داده شوند در بدنه درخواست JSON ارسال می‌شوند. این به شما امکان می‌دهد یک تماس API که شامل چندین عملیات در منابع مختلف است ارسال کنید.

به عنوان مثال، نام منبع یک کمپین از قالب زیر استفاده می کند:

customers/CUSTOMER_ID/campaigns/CAMPAIGN_ID

برای استخراج URL مورد استفاده برای جهش کمپین ها، شناسه منبع دنباله دار را حذف کنید و :mutate :

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

یک پیام Mutate حاوی یک شی JSON سطح بالا با یک آرایه operations است که می‌تواند شامل بسیاری از اشیاء operation باشد. هر عملیات، به نوبه خود، می تواند یکی از موارد زیر باشد: create ، update ، یا remove . اینها تنها عملیات جهش ممکن است.

POST /v16/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 /v16/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 /v16/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 /v16/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"
    }
  ]
}