Değişim

Çoğu kaynak, Mutate yöntemi kullanılarak değiştirilir (oluşturulur, güncellenir veya kaldırılır). Mutate yöntemi, kaynağa özgü bir URL'ye HTTP POST olarak çağrılır. Bu URL, kaynak adı kalıbıyla eşleşir ve sonunda kaynak kimliği bulunmaz. Değiştirilecek kaynakların kimlikleri bunun yerine JSON isteği gövdesinde gönderilir. Bu sayede, farklı kaynaklarda birden fazla işlem içeren tek bir API çağrısı gönderebilirsiniz.

Örneğin, bir kampanyanın kaynak adı aşağıdaki biçimi kullanır:

customers/CUSTOMER_ID/campaigns/CAMPAIGN_ID

Kampanyaları değiştirme için kullanılan URL'yi elde etmek üzere sondaki kaynak kimliğini çıkarın ve :mutate ekleyin:

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

Mutate mesajı, birçok operation nesnesi içerebilen bir operations dizisiyle birlikte üst düzey bir JSON nesnesi içerir. Her işlem sırasıyla create, update veya remove olabilir. Yalnızca bu mutasyon işlemleri mümkündür.

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

{
  "operations": [
    ...
  ]
}

Çoğu hizmet, tek bir API çağrısında binlerce işlemi destekler. Sistem Sınırları kılavuzunda, istek boyutlarıyla ilgili sınırlamalar açıklanmaktadır.

Tek bir API isteğindeki işlemler varsayılan olarak tek bir işlem grubu olarak yürütülür. Yani, tüm işlemler birlikte başarılı olur veya tek bir işlem başarısız olursa tüm grup başarısız olur. Bazı hizmetler bu davranışı değiştirmek için partialFailure özelliğini destekler. Değişiklik işlemi semantiği hakkında daha ayrıntılı bilgi için Kaynakları Değiştirme bölümüne bakın.

Oluştur

Oluşturma işlemleri yeni öğeler üretir ve oluşturmak istediğiniz kaynağın tam JSON temsilini içermelidir.

POST /v26/customers/CUSTOMER_ID/campaigns:mutate HTTP/1.1
Host: googleads.googleapis.com
Content-Type: application/json
Authorization: Bearer ACCESS_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": {}
      }
    }
  ]
}

Güncelle

Güncelleme işlemleri, mevcut bir kaynakta seyrek güncellemeler gerçekleştirir. Yalnızca değiştirmek istediğiniz alanları belirtmeniz gerekir.

Güncellemek istediğiniz alanları belirtmek için updateMask özelliğini virgülle ayrılmış alan adları listesi olarak ayarlayın. Bu yöntem, özellikle bir nesnenin tam olarak oluşturulmuş bir JSON gösterimine sahipseniz (örneğin, önceki bir API çağrısı tarafından döndürülen) ancak yalnızca belirli alanları değiştirmek istiyorsanız kullanışlıdır. JSON nesnesini budamak yerine, updateMask içinde değiştirilecek alan adlarını listeleyip JSON nesnesinin tamamını gönderebilirsiniz.

Aşağıdaki örnekte, belirli bir resourceName değerine sahip mevcut bir kampanyanın name ve status değerleri değiştirilmektedir.

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

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

Kaldır

Kaldırma işlemleri, bir nesneyi etkili bir şekilde silerek Google Ads reklam durumunu REMOVED olarak ayarlar. Yalnızca kaldırılacak resourceName gereklidir.

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

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