Method: customers.googleAds.mutate

منابع را ایجاد، به روز رسانی یا حذف می کند. این روش از تراکنش های اتمی با چندین نوع منبع پشتیبانی می کند. به عنوان مثال، می توانید به صورت اتمی یک کمپین و بودجه کمپین ایجاد کنید یا تا هزاران جهش اتمی انجام دهید.

این روش در اصل یک بسته بندی در اطراف یک سری روش های جهش یافته است. تنها ویژگی هایی که برای فراخوانی مستقیم آن روش ها ارائه می دهد عبارتند از:

  • معاملات اتمی
  • نام منابع موقت (در زیر توضیح داده شده است)
  • تا حدودی تاخیر در ایجاد یک سری تماس های جهش یافته کاهش یافته است

توجه: فقط منابعی که از تراکنش‌های اتمی پشتیبانی می‌کنند گنجانده شده‌اند، بنابراین این روش نمی‌تواند جایگزین همه تماس‌های سرویس‌های فردی شود.

مزایای تراکنش اتمی

اتمی بودن، رسیدگی به خطا را بسیار آسان تر می کند. اگر یک سری تغییرات ایجاد می کنید و یکی با شکست مواجه می شود، می تواند حساب شما را در وضعیت ناسازگاری قرار دهد. با اتمیسیته، یا مستقیماً به حالت انتخابی می‌رسید، یا درخواست با شکست مواجه می‌شود و می‌توانید دوباره امتحان کنید.

نام منابع Temp

نام منابع Temp نوع خاصی از نام منبع است که برای ایجاد یک منبع و ارجاع به آن منبع در همان درخواست استفاده می شود. به عنوان مثال، اگر یک بودجه کمپین با resourceName برابر با customers/123/campaignBudgets/-1 ایجاد شود، نام منبع را می توان در قسمت Campaign.budget در همان درخواست دوباره استفاده کرد. به این ترتیب، این دو منبع ایجاد و به صورت اتمی به هم مرتبط می شوند.

برای ایجاد یک نام منبع موقت، یک عدد منفی در قسمتی از نام که سرور به طور معمول اختصاص می دهد قرار دهید.

توجه داشته باشید:

  • قبل از استفاده مجدد از نام، منابع باید با نام موقت ایجاد شوند. به عنوان مثال، مثال قبلی CampaignBudget+Campaign اگر ترتیب جهش معکوس شود، با شکست مواجه می شود.
  • نام های Temp در تمام درخواست ها به خاطر نمی آیند.
  • هیچ محدودیتی برای تعداد نام های موقت در یک درخواست وجود ندارد.
  • هر نام موقت باید از یک عدد منفی منحصر به فرد استفاده کند، حتی اگر نوع منابع متفاوت باشد.

تاخیر

مهم است که جهش ها را بر اساس نوع منبع گروه بندی کنید، در غیر این صورت درخواست ممکن است به پایان برسد و شکست بخورد. تأخیر تقریباً برابر با یک سری فراخوانی به روش های جهش فردی است که در آن هر تغییر در نوع منبع یک فراخوانی جدید است. به عنوان مثال، تغییر دادن 10 کمپین و سپس 10 گروه تبلیغاتی مانند 2 تماس است، در حالی که تغییر دادن 1 کمپین، 1 گروه تبلیغات، 1 کمپین، 1 گروه تبلیغات مانند 4 تماس است.

فهرست خطاهای پرتاب شده : AdCustomizerError AdError AdGroupAdError AdGroupCriterionError AdGroupError AssetError AuthenticationError AuthorizationError BiddingError CampaignBudgetError CampaignCriterionError CampaignError CampaignExperimentErrorError CampaignExperimentErrorErrorCampaignExperimentErrorErrorCampaignExperimentErrorSerrorError riterionError CustomerFeedError DatabaseError DateError DateRangeError DistinctError ExtensionFeedItemError ExtensionSettingError FeedAttributeReferenceError FeedError FeedItemError FeedItemSetError FieldError FieldMaskError FunctionFeedItemErrorParsingErrorEternalError PlanCampaignError KeywordPlanError LabelError ListOperationError MediaUploadError MutateError NewResourceCreationError NullError OperationAccessDeniedError _ _ PolicyFindingError PolicyViolationError QuotaError RangeError RequestError ResourceCountLimitExceededError SettingError SharedSetError SizeLimitError StringFormatError StringLengthError UrlFieldError UserListError YoutubeVideoRegistrationError

درخواست HTTP

POST https://googleads.googleapis.com/v16/customers/{customerId}/googleAds:mutate

URL از دستور GRPC Transcoding استفاده می کند.

پارامترهای مسیر

مولفه های
customerId

string

ضروری. شناسه مشتری که منابعش در حال تغییر است.

درخواست بدن

بدنه درخواست حاوی داده هایی با ساختار زیر است:

نمایندگی JSON
{
  "mutateOperations": [
    {
      object (MutateOperation)
    }
  ],
  "partialFailure": boolean,
  "validateOnly": boolean,
  "responseContentType": enum (ResponseContentType)
}
زمینه های
mutateOperations[]

object ( MutateOperation )

ضروری. فهرست عملیاتی که باید روی منابع فردی انجام شود.

partialFailure

boolean

اگر درست باشد، عملیات موفقیت آمیز انجام می شود و عملیات نامعتبر خطاها را برمی گرداند. اگر نادرست باشد، تمام عملیات در یک تراکنش انجام می‌شود، اگر و تنها در صورتی که همه آنها معتبر باشند. پیش فرض نادرست است.

validateOnly

boolean

اگر درست باشد، درخواست تایید می شود اما اجرا نمی شود. فقط خطاها برمی گردند، نه نتایج.

responseContentType

enum ( ResponseContentType )

تنظیم نوع محتوای پاسخ. تعیین می کند که آیا منبع قابل تغییر یا فقط نام منبع باید به پست جهش برگردانده شود. منبع قابل تغییر تنها در صورتی برگردانده می شود که منبع دارای فیلد پاسخ مناسب باشد. به عنوان مثال، MutateCampaignResult.campaign.

بدن پاسخگو

پیام پاسخ برای GoogleAdsService.Mutate .

در صورت موفقیت آمیز بودن، بدنه پاسخ حاوی داده هایی با ساختار زیر است:

نمایندگی JSON
{
  "partialFailureError": {
    object (Status)
  },
  "mutateOperationResponses": [
    {
      object (MutateOperationResponse)
    }
  ]
}
زمینه های
partialFailureError

object ( Status )

خطاهایی که مربوط به خرابی عملیات در حالت شکست جزئی است. فقط زمانی که partialFailure = true باشد و تمام خطاها در داخل عملیات رخ دهد، برگردانده می شود. اگر هر گونه خطایی خارج از عملیات رخ دهد (مثلاً خطاهای تأیید اعتبار)، یک خطای سطح RPC را برمی گردانیم.

mutateOperationResponses[]

object ( MutateOperationResponse )

همه پاسخ ها برای جهش یافته

محدوده مجوز

به محدوده OAuth زیر نیاز دارد:

  • https://www.googleapis.com/auth/adwords

برای اطلاعات بیشتر، به نمای کلی OAuth 2.0 مراجعه کنید.