Kaynak oluşturur, günceller veya kaldırır. Bu yöntem, birden fazla kaynak türüyle atomik işlemleri destekler. Örneğin, bir kampanyayı ve kampanya bütçesini atomik olarak oluşturabilir veya atomik olarak binlerce değişikliği gerçekleştirebilirsiniz.
Bu yöntem, temel olarak bir dizi mutasyon yöntemi için sarmalayıcıdır. Bu yöntemleri doğrudan çağırmak yerine sunduğu tek özellikler şunlardır:
- Atomik işlemler
- Geçici kaynak adları (aşağıda açıklanmıştır)
- Bir dizi değişen çağrıda görülen gecikme biraz azaldı
Not: Yalnızca atomik işlemleri destekleyen kaynaklar dahil edildiğinden bu yöntem bağımsız hizmetlere yapılan tüm çağrıların yerini alamaz.
Atomic Transaction Avantajları
Atomiity, hataların ele alınmasını çok daha kolay hale getirir. Bir dizi değişiklik yaparsanız ve bunlardan biri başarısız olursa, hesabınız tutarsız bir durumda olabilir. Atomluk ile, seçilen duruma doğrudan ulaşırsınız veya istek başarısız olur ve yeniden deneyebilirsiniz.
Geçici Kaynak Adları
Geçici kaynak adları, kaynak oluşturmak ve aynı istekte bu kaynağa referans vermek için kullanılan özel bir kaynak adı türüdür. Örneğin, customers/123/campaignBudgets/-1
tutarına eşit bir resourceName
ile kampanya bütçesi oluşturulursa bu kaynak adı, aynı istekteki Campaign.budget
alanında yeniden kullanılabilir. Bu şekilde, iki kaynak atomik olarak oluşturulur ve birbirine bağlanır.
Geçici kaynak adı oluşturmak için sunucunun normalde atayacağı ad bölümüne negatif bir sayı girin.
Not:
- Adın yeniden kullanılabilmesi için kaynakların bir geçici adla oluşturulması gerekir. Örneğin, değiştirme sırası tersine çevrildiğinde önceki CampaignBudget+Campaign örneği başarısız olur.
- Geçici adlar istekler genelinde hatırlanmaz.
- Bir istekteki geçici adların sayısıyla ilgili bir sınır yoktur.
- Kaynak türleri farklı olsa bile her geçici ad için benzersiz bir negatif sayı kullanılmalıdır.
Gecikme
Değişimleri kaynak türüne göre gruplandırmak önemlidir. Aksi takdirde istek zaman aşımına uğrayıp başarısız olabilir. Gecikme, genel olarak bağımsız değişiklik yöntemlerine yapılan bir dizi çağrıya eşittir. Burada kaynak türündeki her değişiklik yeni bir çağrıdır. Örneğin, 10 kampanya, 10 reklam grubu değiştirildiğinde 2 arama, 1 kampanya, 1 reklam grubu, 1 kampanya ve 1 reklam grubu 4 arama gibi değiştirilir.
CampaignCriterionErrorCampaignErrorCampaignExperimentErrorCampaignSharedSetErrorCollectionSizeErrorContextErrorConversionActionErrorCriterionErrorCustomerFeedErrorDatabaseErrorDateErrorDateRangeErrorDistinctErrorExtensionFeedItemErrorExtensionSettingErrorFeedAttributeReferenceErrorFeedErrorFeedItemErrorFeedItemSetErrorFieldErrorFieldMaskErrorFunctionParsingErrorHeaderErrorImageErrorInternalErrorKeywordPlanAdGroupKeywordErrorKeywordPlanCampaignErrorKeywordPlanErrorLabelErrorListOperationErrorMediaUploadErrorMutateErrorNewResourceCreationErrorNullErrorOperationAccessDeniedErrorPolicyFindingErrorPolicyViolationErrorQuotaErrorRangeErrorRequestErrorResourceCountLimitExceededErrorSettingErrorSharedSetErrorSizeLimitErrorStringFormatErrorStringLengthErrorUrlFieldErrorUserListErrorYoutubeVideoRegistrationError
HTTP isteği
POST https://googleads.googleapis.com/v16/customers/{customerId}/googleAds:mutate
URL, gRPC Kod Dönüştürme söz dizimini kullanır.
Yol parametreleri
Parametreler | |
---|---|
customerId |
Zorunlu. Kaynakları değiştirilen müşterinin kimliği. |
İstek içeriği
İsteğin gövdesi, aşağıdaki yapıya sahip veriler içerir:
JSON gösterimi |
---|
{ "mutateOperations": [ { object ( |
Alanlar | |
---|---|
mutateOperations[] |
Zorunlu. Bağımsız kaynaklar üzerinde gerçekleştirilecek işlemlerin listesi. |
partialFailure |
Doğru değerine ayarlanırsa başarılı işlemler gerçekleştirilir ve geçersiz işlemler hata döndürür. Yanlış değerine ayarlanırsa tüm işlemler, yalnızca hepsinin geçerli olması durumunda tek bir işlemde gerçekleştirilir. Varsayılan değer, false (yanlış) değeridir. |
validateOnly |
Doğru ise istek doğrulanır ancak yürütülmez. Yalnızca hatalar döndürülür, sonuç döndürülmez. |
responseContentType |
Yanıt içerik türü ayarı. Mutasyondan sonra değişebilir kaynağın mı yoksa yalnızca kaynak adının mı döndürüleceğini belirler. Değişebilir kaynak yalnızca, kaynakta uygun yanıt alanı varsa döndürülür. Örneğin, MutateCampaignResult.campaign. |
Yanıt gövdesi
GoogleAdsService.Mutate
için yanıt mesajı.
Başarılı olursa yanıt metni aşağıdaki yapıyla birlikte verileri içerir:
JSON gösterimi |
---|
{ "partialFailureError": { object ( |
Alanlar | |
---|---|
partialFailureError |
Kısmi hata modundaki işlem hatalarıyla ilgili hatalar. Yalnızca kısmiFailure = true olduğunda ve tüm hatalar işlemler içinde ortaya çıktığında döndürülür. İşlemler dışında herhangi bir hata oluşursa (ör. kimlik doğrulama hataları) RPC düzeyinde bir hata döndürürüz. |
mutateOperationResponses[] |
Değişime ilişkin tüm yanıtlar. |
Yetkilendirme kapsamları
Aşağıdaki OAuth kapsamını gerektirir:
https://www.googleapis.com/auth/adwords
Daha fazla bilgi için OAuth 2.0'a Genel Bakış başlıklı makaleye bakın.