GZT Sorun Giderme

Bu kılavuzda, Authorized Buyers kullanıcı arayüzündeki GZT Dökümü aracıyla da gösterilen gerçek zamanlı teklif verme kampanya metriklerine programatik olarak erişmenizi sağlayan GZT sorun giderme kaynakları ele alınmaktadır. Bunlara bidders.filterSets, bidders.accounts.filterSets ve bunların altındaki tüm kaynaklar dahildir.

GZT sorun giderme kaynaklarındaki metrikleri kullanarak, kaçırılan gösterim kazanma fırsatlarıyla ilgili analizlere ulaşabilir ve gerçek zamanlı teklif verme kampanyanızı optimize etmenize yardımcı olabilir.

API yapısı ve stilinde ayarlamalar

GZT sorun giderme kaynakları; sahipliği ve erişimi açıkça belirtmek, API tarafından döndürülen veriler üzerinde daha ayrıntılı kontrol sağlamak ve Google API tasarım uygulamalarıyla daha uyumlu olması için yapılan birkaç değişiklik içermektedir.

Teklif veren ve hesap düzeyindeki kaynaklar

Kaynaklar hem bidders hem de bidders.accounts altında yapılandırılır. Bunlar, bir API çağrısının teklif vereni mi (üst hesap olarak da bilinir) ve ilişkili tüm alt hesapları mı yoksa bireysel Authorized Buyers hesaplarını mı hedeflediğini belirtmenize olanak tanır. GZT Sorunlarını Giderme bağlamında bidders.filterSets altında yapılandırılan kaynaklar, belirtilen teklif veren ve ilişkili tüm alt hesaplar için toplu metrikleri döndürür. Buna karşın, bidders.accounts.filterSets altındakiler, teklif verenin veya alt hesap olup olmadığına bakılmaksızın yalnızca belirtilen hesapla ilgili metrikleri döndürür.

Not: Teklif verme yetkisini başka bir alıcıya veren hesaplar teklif veren hesabı değildir ve dolayısıyla teklif veren düzeyindeki kaynaklara erişemez. Ayrıca, teklif veren olmayan hesaplar, hesap düzeyindeki impressionMetrics, filteredBidResponses, bidResponseErrors ve bidResponsesWithoutBids kaynaklarına erişemez.

Kaynak adlarını benzersiz tanımlayıcılar olarak kullanıma sunuyoruz

Kaynak adları, tam sayı veya dize kimlikleri yerine benzersiz tanımlayıcılar olarak kullanılır. Belirli bir kaynak türünün yeni bir örneğini oluştururken artık kaynağın URI yolunu ve ardından tercih edilen kaynak kimliğini kullanarak göreli bir kaynak adı belirtmeniz gerekir. Aşağıda, GZT Sorun giderme kaynaklarıyla ilgili ad örnekleri verilmiştir:

Kaynak Ad örneği
bidders.filterSets bidders/12345678/filterSets/fset_1
bidders.accounts.filterSets bidders/12345678/accounts/87654321/filterSets/fset_2

Not: Adda bidders için belirtilen kaynak kimliği, teklif verenin Authorized Buyers hesap kimliği olmalıdır. accounts için kaynak kimliği, teklif verenin veya kendisi tarafından yönetilen alt hesabın hesap kimliği olmalıdır. Google hesabınızla hangi Authorized Buyers hesaplarının ilişkili olduğunu bilmiyorsanız bulmak için accounts.list yöntemini kullanabilirsiniz.

Filtre grupları

Filtre grubu, kullanılabilen filtreleme seçeneklerini temsil eder ve teklif veren veya hesap düzeyinde oluşturulabilir. Gerçek zamanlı teklif verme kampanyalarınız için metrikleri alan GZT Sorun Giderme kaynaklarının liste sonuçlarını filtrelemek için kullanılır.

Metrikler alınırken uygulanan filtre, belirtilen filtre grubundaki her bir filtrenin kesişimidir. platforms gibi liste filtreleri, listedeki her bir öğenin birleşimi olarak yorumlanır.

Teklif veren ve hesap düzeyindeki filtre grupları birbirinden farklıdır ve yalnızca oluşturulduğu düzeyden erişilebilir (bunları oluşturmak için kullanılan hesaptan bağımsız olarak). Hesap düzeyinde oluşturulan teklif veren ve alt hesap paylaşımı filtre grupları ise yalnızca teklif veren düzeyindeki kaynaklara erişebilir. Aşağıdaki tabloda, teklif verenin ve alt hesapların her iki düzeyde de kaynaklara nasıl erişebileceği özetlenmektedir:

  bidders.filterSets bidders.accounts.filterSets
Teklif Veren Hesabı Yalnızca teklif veren seviyesindeki filtre gruplarını etkileyen bir API çağrısı. Yalnızca hesap düzeyinde filtre gruplarını etkileyen bir API çağrısı.
Alt Hesap Bu API çağrısı hata yanıtı döndürür. Yalnızca hesap düzeyinde filtre gruplarını etkileyen bir API çağrısı.

Filtre grubu oluştur

Filtre grubu oluştururken relativeDateRange, absoluteDateRange veya realtimeTimeRange şeklinde bir zaman aralığı belirtmeniz gerekir. Metrikler alınırken varsayılan davranış, tüm zaman aralığı için tüm verilerin sağlanması şeklindedir. Zaman aralığı boyunca bir zaman serisi dökümü almak isterseniz HOURLY veya DAILY aralıklarını belirtmek için timeSeriesGranularity değerini belirtebilirsiniz.

Filtre grubuna yalnızca kısa bir süreliğine ihtiyaç duyuyorsanız isTransient sorgu parametresini true olarak ayarlayabilirsiniz. Bu, filtre grubunun geçici olduğunu, yani süresiz olarak uygulanmayacağını gösterir. Geçici filtre grupları, oluşturulduktan sonra en az bir saat süreyle kullanılabilir ancak bir süre sonra silinir. Varsayılan olarak, filtre grupları geçici değildir.

Teklif veren düzeyinde örnek

Teklif veren seviyesinde yeni bir filtre grubu oluşturmak için bidders.filterSets kaynak URI'sına aşağıdaki biçime sahip bir POST isteği gönderin:

https://adexchangebuyer.googleapis.com/v2beta1/bidders/{bidder resource ID}/filterSets

Uyarı: Teklif veren düzeyindeki filtre grupları, reklam öğesi veya anlaşma kimliklerine göre filtreleme yapamaz. Teklif veren düzeyinde filtre grubu oluştururken bu filtreleri belirtirseniz bir hata yanıtı alırsınız.

İstek

Aşağıda, geçici olmayan yeni bir teklif veren düzeyinde filtre grubu oluşturan POST isteği örneği verilmiştir:

POST https://adexchangebuyer.googleapis.com/v2beta1/bidders/12345678/filterSets
Authorization: Bearer access token here
Content-Type: application/json

{
  "name": "bidders/12345678/filterSets/bidder-fs",
  "format": "DISPLAY",
  "environment": "APP",
  "platforms": ["TABLET", "MOBILE"],
  "absoluteDateRange": {
    "startDate": {
      "month": 11,
      "day": 26,
      "year": 2017
    },
    "endDate": {
      "month": 12,
      "day": 3,
      "year": 2017
    }
  },
  "timeSeriesGranularity": "DAILY"
}

Yanıt

İstek başarılı olursa sunucu bir 200 OK durum koduyla yanıt verir. Yanıt gövdesi, istekte gönderilen filtre grubuyla aynı olacak, oluşturulan filtre grubu kaynağını içerir.

Hesap düzeyinde örnek

Hesap düzeyinde yeni bir filtre grubu oluşturmak için aşağıdaki biçime sahip olan bidders.accounts.filterSets kaynak URI'sına bir POST isteği gönderin:

https://adexchangebuyer.googleapis.com/v2beta1/bidders/{bidder resource ID}/accounts/{account resource ID}/filterSets

Not: accounts için belirtilen kaynak kimliği, URI'da belirtilen teklif veren hesabının erişebildiği herhangi bir Authorized Buyers hesabının (teklif veren hesabının kendisi dahil) hesap kimliği olabilir.

İstek

Aşağıda, geçici olmayan yeni bir hesap düzeyinde filtre grubu oluşturan POST isteği örneği verilmiştir:

POST https://adexchangebuyer.googleapis.com/v2beta1/bidders/12345678/accounts/87654321/filterSets
Authorization: Bearer access token here
Content-Type: application/json

{
  "name": "bidders/12345678/accounts/87654321/filterSets/account-fs",
  "format": "VIDEO",
  "environment": "WEB",
  "platforms": ["DESKTOP"],
  "absoluteDateRange": {
    "startDate": {
      "month": 11,
      "day": 26,
      "year": 2017
    },
    "endDate": {
      "month": 12,
      "day": 3,
      "year": 2017
    }
  },
  "timeSeriesGranularity": "DAILY"
}
Yanıt

İstek başarılı olursa sunucu bir 200 OK durum koduyla yanıt verir. Yanıt gövdesi, istekte gönderilen filtre grubuyla aynı olacak, oluşturulan filtre grubu kaynağını içerir.

Filtre grubu al

"get" yöntemi, yalnızca oluşturulduğu düzeydeki bir filtre grubunu alabilir. Örneğin, teklif veren hesabı, hesap düzeyinde oluşturulan bir filtre grubunu almak için bidders.filterSets.get yöntemi yerine bidders.accounts.filterSets.get yöntemini kullanmalıdır.

Teklif veren düzeyi

Aşağıdaki biçime sahip bidders.filterSets kaynak URI'sine bir HTTP GET isteği göndererek teklif veren düzeyinde bir filtre grubu alabilirsiniz:

GET https://adexchangebuyer.googleapis.com/v2beta1/bidders/{bidder resource ID}/filterSets/{filter set resource ID}
İstek

Aşağıda bir örnek verilmiştir:

GET https://adexchangebuyer.googleapis.com/v2beta1/bidders/12345678/filterSets/bidder-fs
Yanıt

İstek başarılı olursa sunucu bir 200 OK HTTP durum kodu ve alınan filtre grubuyla yanıt verir:

{
  "name": "bidders/12345678/filterSets/bidder-fs",
  "format": "DISPLAY",
  "environment": "APP",
  "platforms": ["TABLET", "MOBILE"],
  "absoluteDateRange": {
    "startDate": {
      "month": 11,
      "day": 26,
      "year": 2017
    },
    "endDate": {
      "month": 12,
      "day": 3,
      "year": 2017
    }
  },
  "timeSeriesGranularity": "DAILY"
}

Hesap düzeyi

Hesap düzeyinde bir filtre grubunu, aşağıdaki biçime sahip bidders.accounts.filterSets kaynak URI'sine bir HTTP GET isteği göndererek alabilirsiniz:

GET https://adexchangebuyer.googleapis.com/v2beta1/bidders/{bidder resource ID}/accounts/{account resource ID}/filterSets/{filter set resource ID}
İstek

Aşağıda bir örnek verilmiştir:

GET https://adexchangebuyer.googleapis.com/v2beta1/bidders/12345678/accounts/87654321/filterSets/account-fs
Yanıt

İstek başarılı olursa sunucu bir 200 OK HTTP durum kodu ve alınan filtre grubuyla yanıt verir:

{
  "name": "bidders/12345678/accounts/87654321/filterSets/account-fs",
  "format": "VIDEO",
  "environment": "WEB",
  "platforms": ["DESKTOP"],
  "absoluteDateRange": {
    "startDate": {
      "month": 11,
      "day": 26,
      "year": 2017
    },
    "endDate": {
      "month": 12,
      "day": 3,
      "year": 2017
    }
  },
  "timeSeriesGranularity": "DAILY"
}

Filtre gruplarını listeleyin

Liste yöntemi, yalnızca çağrıldığı düzeyden erişilebilen filtre gruplarını döndürür. Örneğin, teklif veren hesabı bidders.filterSets.list çağırırken bidders.accounts.filterSets.create aracılığıyla kendisi için oluşturulan filtre gruplarını görmez.

Teklif veren düzeyi

Aşağıdaki biçime sahip bidders.filtersets kaynak URI'sine bir HTTP GET isteği göndererek belirli bir teklif veren için teklif veren seviyesindeki tüm filtre gruplarını alabilirsiniz:

GET https://adexchangebuyer.googleapis.com/v2beta1/bidders/{bidder resource ID}/filterSets
İstek

Aşağıda, hesap kimliği 12345678 olan bir teklif veren için tüm teklif veren düzeyindeki filtre gruplarının listelendiği bir örnek verilmiştir:

GET https://adexchangebuyer.googleapis.com/v2beta1/bidders/12345678/filterSets
Yanıt
{
  "filterSets": [{
      "filterSetId": "99994",
      "name": "bidders/12345678/filterSets/test-b-1",
      "relativeDateRange": {
        "durationDays": 30
      }
    },
    {
      "realtimeTimeRange": {
        "startTimeStamp": "2017-11-15T12:30:30.072831583Z"
      },
      "filterSetId": "99995",
      "name": "bidders/12345678/filterSets/test-b-2",
      "timeSeriesGranularity": "HOURLY"
    },
    {
      "absoluteDateRange": {
        "endDate": {
          "day": 12,
          "month": 3,
          "year": 2017
        },
        "startDate": {
          "day": 26,
          "month": 11,
          "year": 2017
        }
      },
      "filterSetId": "99996",
      "name": "bidders/12345678/filterSets/bidder-fs",
      "timeSeriesGranularity": "DAILY",
      "platforms": ["TABLET", "MOBILE"],
      "environment": "APP",
      "format": "DISPLAY"
    }
  ]
}

Hesap düzeyi

Belirli bir hesap için hesap düzeyindeki tüm filtre gruplarını aşağıdaki biçimdeki bidders.accounts.filtersets kaynak URI'sine bir HTTP GET isteği göndererek alabilirsiniz:

GET https://adexchangebuyer.googleapis.com/v2beta1/bidders/{bidder resource ID}/accounts/{account resource ID}/filterSets
İstek

Aşağıda, hesap kimliği 87654321 olan bir alt hesap için tüm hesap düzeyindeki filtre gruplarının listelendiği bir örnek verilmiştir:

GET https://adexchangebuyer.googleapis.com/v2beta1/bidders/12345678/accounts/87654321/filterSets
Yanıt
{
  "filterSets": [{
        "realtimeTimeRange": {
        "startTimeStamp": "2017-11-19T04:24:43.252893487Z"
      },
      "filterSetId": "99997",
      "name": "bidders/12345678/accounts/87654321/filterSets/test-a-1",
      "timeSeriesGranularity": "DAILY"
    },
    {
      "absoluteDateRange": {
        "endDate": {
          "day": 3,
          "month": 12,
          "year": 2017
        },
        "startDate": {
          "day": 26,
          "month": 11,
          "year": 2017
        }
      },
      "filterSetId": "99998",
      "name": "bidders/12345678/accounts/87654321/filterSets/account-fs",
      "timeSeriesGranularity": "DAILY",
      "platforms": ["DESKTOP"],
      "environment": "WEB",
      "format": "VIDEO"
    }
  ]
}

Filtre grubunu silme

Artık ihtiyaç duyulmayan geçici olmayan filtre gruplarını kaldırmak için delete yöntemini kullanabilirsiniz. Yalnızca çağrıldığı düzeyden erişilebilen filtre gruplarını kaldırabilir. Örneğin, bir teklif veren hesabı, bidders.filterSets.delete ile bidders.accounts.filterSets.create ile oluşturulmuş bir filtre grubunu silemez.

Teklif veren düzeyi

Aşağıdaki biçime sahip bidders.filtersets kaynak URI'sine bir HTTP DELETE isteği göndererek belirli bir hesap için teklif veren düzeyinde filtre grubunu silebilirsiniz:

DELETE https://adexchangebuyer.googleapis.com/v2beta1/bidders/{bidder resource ID}/filterSets/{filter set resource ID}
İstek

Aşağıda, teklif veren düzeyinde filtre grubunu silmeyle ilgili bir örnek verilmiştir:

DELETE https://adexchangebuyer.googleapis.com/v2beta1/bidders/12345678/filterSets/test-b-2
Yanıt

Başarılı olursa isteğin gövdesi boş olur. Belirtilen filtre grubuna artık erişilemiyor.

Hesap düzeyi

Aşağıdaki biçimdeki bidders.accounts.filtersets kaynak URI'sine bir HTTP DELETE isteği göndererek belirli bir hesap için hesap düzeyinde bir filtre grubunu silebilirsiniz:

DELETE https://adexchangebuyer.googleapis.com/v2beta1/bidders/{bidder resource ID}/accounts/{account resource ID}/filterSets/{filter set resource ID}
İstek

Hesap düzeyinde filtre grubu silmeyle ilgili bir örnek aşağıda verilmiştir:

DELETE https://adexchangebuyer.googleapis.com/v2beta1/bidders/12345678/accounts/87654321/filterSets/test-a-1
Yanıt

Başarılı olursa isteğin gövdesi boş olur. Belirtilen filtre grubuna artık erişilemiyor.

GZT sorun giderme metriklerini alma

Metrikleri almak için kullanılan tüm GZT sorun giderme kaynakları benzer bir şekilde çalışır. filterSetName yol parametresiyle belirtilen filtre grubu metriklerini listelemek için tek bir yönteme sahiptirler. Belirtilen filtre grubu, metrikler sorgulanırken hangi filtrelerin ve ayarların uygulanacağını belirler. Bu kaynakların teklif veren seviyesinde çağrılması durumunda teklif veren hesabından ve ilişkili tüm alt hesaplardan toplu metrikler döndürülürken hesap düzeyinden yapılan bir çağrı, yalnızca bireysel hesabın metriklerini döndürür.

Teklif Metrikleri

bidMetrics kaynağı, teklif sayısıyla ölçülen metrikleri almak için kullanılır. Örneğin, belirli bir zaman aralığındaki tekliflerinizin toplam sayısını ve bunlardan kaçının açık artırmadan filtrelenmediğini, gösterim kazanıp kazanmadığını vb. belirlemek için bunu kullanabilirsiniz. Metrikleri toplamak için kullanılan diğer tüm GZT sorun giderme kaynaklarında olduğu gibi yalnızca list yöntemi bulunur.

Teklif veren seviyesinde teklif metriklerini listeleme

Belirli bir filtre grubu için teklif veren düzeyindeki teklif metriklerini, aşağıdaki biçime sahip olan bidders.filtersets.bidMetrics kaynak URI'sine bir HTTP GET isteği göndererek listeleyebilirsiniz:

GET https://adexchangebuyer.googleapis.com/v2beta1/bidders/{bidder resource ID}/filterSets/{filter set resource ID}/bidMetrics
İstek

Aşağıda, teklif veren düzeyindeki teklif metriklerinin listelendiği bir örnek verilmiştir:

GET https://adexchangebuyer.googleapis.com/v2beta1/bidders/12345678/filterSets/bidder-fs/bidMetrics
Yanıt

İstek başarılı olursa sunucu bir 200 OK durum koduyla ve belirtilen boyutlar ve ayrıntı düzeyine yönelik metrik satırları içeren bir gövdeyle yanıt verir.

{
  "bidMetricsRows": [{
        "bids": {
        "value": "6160"
      },
      "bidsInAuction": {
        "value": "5698"
      },
      "billedImpressions": {
        "value": "1196"
      },
      "impressionsWon": {
        "value": "2920"
      },
      "measurableImpressions": {
        "value": "1160"
      },
      "rowDimensions": {
        "timeInterval": {
          "endTime": "2017-11-29T08:00:00Z",
          "startTime": "2017-11-28T08:00:00Z"
        }
      },
      "viewableImpressions": {
        "value": "683"
      }
    },
    {
      "bids": {
        "value": "104288"
      },
      "bidsInAuction": {
        "value": "94016"
      },
      "billedImpressions": {
        "value": "99"
      },
      "impressionsWon": {
        "value": "125"
      },
      "measurableImpressions": {
        "value": "94"
      },
      "rowDimensions": {
        "timeInterval": {
          "endTime": "2017-11-30T08:00:00Z",
          "startTime": "2017-11-29T08:00:00Z"
        }
      },
      "viewableImpressions": {
        "value": "87"
      }
    },
    {
      "bids": {
        "value": "3999"
      },
      "bidsInAuction": {
        "value": "3631"
      },
      "billedImpressions": {
        "value": "618"
      },
      "impressionsWon": {
        "value": "1819"
      },
      "measurableImpressions": {
        "value": "604"
      },
      "rowDimensions": {
        "timeInterval": {
          "endTime": "2017-12-01T08:00:00Z",
          "startTime": "2017-11-30T08:00:00Z"
        }
      },
      "viewableImpressions": {
        "value": "369"
      }
    },
    {
      "bids": {
        "value": "15"
      },
      "bidsInAuction": {
        "value": "3"
      },
      "billedImpressions": {},
      "impressionsWon": {
        "value": "3"
      },
      "measurableImpressions": {},
      "rowDimensions": {
        "timeInterval": {
          "endTime": "2017-12-02T08:00:00Z",
          "startTime": "2017-12-01T08:00:00Z"
        }
      },
      "viewableImpressions": {}
    }
  ]
}

Not: Belirli bir metrik için 0 olarak ayarlanmış alanlar yanıtta görünmez. Yukarıdaki boş billedImpressions ve measurableImpressions metrikleri, bunların hem değer hem de varyansının 0 olarak ayarlandığını gösterir.

Uyarı: Yanıttaki verilerin herhangi bir dökümünde, sıfır olmayan en az bir metrik içermiyorsa yanıt satır içermez. Örneğin, bir timeSeriesGranularity belirtildiğinde yanıt, filtre grubunda belirtilen zaman aralığındaki tüm metriklerin sıfır olduğu hiçbir timeInterval için satır içermez.

Hesap düzeyindeki teklif metriklerini listeleme

Belirli bir filtre grubu için hesap düzeyindeki teklif metriklerini, aşağıdaki biçimdeki bidders.accounts.filtersets.bidMetrics kaynak URI'sine bir HTTP GET isteği göndererek listeleyebilirsiniz:

GET https://adexchangebuyer.googleapis.com/v2beta1/bidders/{bidder resource ID}/accounts/{account resource ID}/filterSets/{filter set resource ID}/bidMetrics
İstek

Aşağıda, hesap düzeyindeki teklif metriklerinin listelendiği bir örnek verilmiştir:

GET https://adexchangebuyer.googleapis.com/v2beta1/bidders/12345678/accounts/87654321/filterSets/account-fs/bidMetrics
Yanıt

İstek başarılı olursa sunucu bir 200 OK durum koduyla ve belirtilen boyutlar ve ayrıntı düzeyine yönelik metrik satırları içeren bir gövdeyle yanıt verir.

{
  "bidMetricsRows": [{
      "bids": {
        "value": "1748"
      },
      "bidsInAuction": {
        "value": "1421"
      },
      "billedImpressions": {
        "value": "301"
      },
      "impressionsWon": {
        "value": "915"
      },
      "measurableImpressions": {
        "value": "298"
      },
      "rowDimensions": {
        "timeInterval": {
          "endTime": "2017-12-01T08:00:00Z",
          "startTime": "2017-11-30T08:00:00Z"
        }
      },
      "viewableImpressions": {
        "value": "172"
      }
    },
    {
      "bids": {
        "value": "6"
      },
      "bidsInAuction": {
        "value": "2"
      },
      "billedImpressions": {},
      "impressionsWon": {
        "value": "1"
      },
      "measurableImpressions": {},
      "rowDimensions": {
        "timeInterval": {
          "endTime": "2017-12-02T08:00:00Z",
          "startTime": "2017-12-01T08:00:00Z"
        }
      },
      "viewableImpressions": {}
    }
  ]
}

Not: Belirli bir metrik için 0 olarak ayarlanmış alanlar yanıtta görünmez. Yukarıdaki boş billedImpressions ve measurableImpressions metrikleri, bunların hem değer hem de varyansının 0 olarak ayarlandığını gösterir.

Uyarı: Yanıttaki verilerin herhangi bir dökümünde, sıfır olmayan en az bir metrik içermiyorsa yanıt satır içermez. Örneğin, bir timeSeriesGranularity belirtildiğinde yanıt, filtre grubunda belirtilen zaman aralığındaki tüm metriklerin sıfır olduğu hiçbir timeInterval için satır içermez.