たとえば、アカウントのリストからインプレッションを取得するために、adwords api .NET クライアント ライブラリを使用しています。API から「1 時間ごと」のセグメンテーションを使用してデータを取得したいと考えています。ReportingService を使用して可能であることはわかっていますが、CampaignService の「get」メソッドへの「通常の」呼び出しを使用しても可能ですか。述語を使用してセレクターがどのように機能するかは知っていますが、そのようにできるとは思いません。
誰でもアイデアはありますか?以下は、私が現在使用しているコードの例です。これで 1 日あたりのインプレッションが得られますが、その日の 1 時間あたりのインプレッションが欲しいです。
AdWordsUser adWordsUser = <GET USER INFO>
CampaignService campaignService = (CampaignService)adWordsUser.GetService(AdWordsService.v201109_1.CampaignService);
campaignService.RequestHeader.clientCustomerId = <CUSTOMERID>
Selector selector = new Selector();
selector.fields = new string[] { "Id", "Name", "Impressions" };
Predicate predicate = new Predicate();
predicate.field = "Impressions";
predicate.@operator = PredicateOperator.GREATER_THAN;
predicate.values = new string[] { "0" };
selector.predicates = new Predicate[] { predicate };
DateRange dateRange = new DateRange();
dateRange.min = DateTime.Now.AddDays(-1).ToString("yyyyMMdd");
dateRange.max = DateTime.Now.AddDays(-1).ToString("yyyyMMdd");
selector.dateRange = dateRange;
selector.paging = new Paging();
int offset = 0;
int pageSize = 500;
CampaignPage page = new CampaignPage();
selector.paging.startIndex = offset;
selector.paging.numberResults = pageSize;
page = campaignService.get(selector);