AdWords API: выберите объявления с пустым показом
После нескольких дней боли и страданий мне удалось понять, что пытается сказать документация, и я подключился к API AdWords, а затем в безумном порыве мне даже удалось извлечь из него некоторые данные. Обманываю себя, я думал, что у меня есть это, пока я не должен был получить некоторые объявления с предложением где.
Моей конечной целью на данный момент было бы просто получить все объявления, которые имеют 0 показов.
Я проверил примеры кода Java и много сообщений SO, конечно, я также проверил документацию AdWords и не смог найти то, что искал. На последнем есть " AdGroupAdService: создание, обновление и удаление объявлений", поэтому, насколько я понимаю, это услуга, которую я должен использовать, мой (Scala) код выглядит так:
val adwordsCredentials = new OfflineCredentials.Builder().forApi(Api.ADWORDS).fromFile().build().generateCredential()
val adwordsSession = new AdWordsSession.Builder().fromFile().withOAuth2Credential(adwordsCredentials).build()
val adgroupService = new AdWordsServices().get(adwordsSession, classOf[AdGroupAdServiceInterface])
def getAds() = {
val builder = new SelectorBuilder()
val selector = builder
.fields("Id", "Name", "Status", "AdGroupId")
.offset(0)
.limit(100)
.build()
val results = adgroupService.get(selector)
if (results.getEntries() != null) {
results.getEntries().foreach( row => {
println(row.getAd.getId)
})
}
}
1) Там нет getAd.getClicks
или же getAd.getImpressions
Я копала Ad.java
класс и единственные доступные поля:
id;
url;
displayUrl;
devicePreference;
adType;
2) Если я добавлю Clicks
на запрос я получаю faultString: [SelectorError.INVALID_FIELD_NAME @ serviceSelector; trigger:'Clicks']
предположительно потому, что в кампании нет поля Clicks
;
3) Являются ли отчеты единственным способом сделать это?
Похоже, что-то довольно легко сделать, но я не мог найти способ.
1 ответ
Google выпустил все поля статистики из нескольких своих сервисов API AdWords, включая AdGroupAdService, с выпуском v201309.
Вам нужно будет использовать AD_PERFORMANCE_REPORT. В селекторе определения вашего отчета установите предикат, включающий только строки, в которых поле Impressions имеет значение 0.