We’ve migrated our documentation to a new site, which means some URLs have changed.
Audience

Traffic フィルタ

/traffic 配下のAPIメソッドでは、イベントの集計範囲を限定するためにフィルタを用いることができます。フィルタを用いることにより、指定した期間の特定のセグメントにトラフィックを絞り込むことができます。フィルタには幾つかの種類があり、使用目的によって使い分けます:

  •  イベント指定 (types event, time, custom, intent and activeTime)

  • コンテント指定 (type keyword)

  •  ユーザおよびユーザ群指定 (types user-keyword, user-external, user and explodeUsers)

フィルタの種類によってはネストして使用できるものがあります。この場合、ネストの外側のフィルタは内側のフィルタを拡張あるいは制限することになります。それ以外の場合はフィルタは論理演算子(and / or / not)を使用して組み合わせて使用できます。

特に明記されていない限り、フィルタの名称・値の表記は大文字・小文字が区別されます。

Event フィルタ

event フィルタを用いてイベントに関連付けられた属性値によってフィルタをかけることができます。例えば、ある地域のユーザからのイベントに絞り込みたい、あるいは特定の種類のデバイスからのイベントのみに興味がある、または特定の会社に割り当てられたIPアドレスからのイベントのみに絞る、といったことが可能です。使用可能なイベントグループはこちらに記載されています。各グループでよく使用されるアイテムは /traffic/event に記載されています。

  •  このフィルタの基本的な形式は以下の通り: 

    {"type":"event", "group":"deviceType", "item":"Mobile"}
    
  • 複数のアイテムにマッチする指定も可能です:

    {"type":"event", "group":"deviceType", "items":["Mobile", "Tablet"]}
    
  • nullまたは空ではない任意の値にもマッチさせることも可能です:

    {"type":"event", "group":"referrerQuery"}
    


event グループのデータは “after the fact“(事後報告、後追い) でレポートされます。ユーザーが同じドメインから次のイベントを受信するまで(例:サイトから外部サイトへ遷移し、再度サイトに戻るまで)、イベントに関連するデータは受信されないことにご注意ください。event フィルターで事後報告されたイベントグループを指定した場合、フィルターはレポートされたデータがない(ユーザーがサイトに戻ってこず、データがない)イベントにはマッチしません。

event group の url ,referrerUrl ,exitLinkUrl で指定する event フィルタ は、実質的には正規化されたURL(normalized, canonical)または 指定したアイテムに紐づく 記事ID でフィルタされます。

Event metrics フィルタ

event-metrics フィルタ は集計指標に関連づけられたデータを基にしたフィルタとして指定できます。例えばページ上に20〜30秒滞在したユーザから発生したイベントのみ、またはページを全体の80〜100%の範囲でスクロールさせたユーザーから発生したイベントのみを考慮したいという場合です。現在利用可能なフィールドは activeTime と scrollDepth です。min と max の値を指定することが可能で、両方を含めてもオプションでも指定可能で、デフォルト値は "min" =0 、"max" は制限ありません。

  • このフィルタの基本的な形式は次の通りです

    {"type":"event-metrics", "group":"activeTime", "min":20, "max":30}
    

    – 滞留時間が 20秒〜30秒の全てのイベントを取得します

  • 上限なしのフィルタ

    {"type":"event-metrics", "group":"scrollDepth", "min":50}
    

    – スクロール深度が50%以上の全てのイベントを取得します

滞在時間とスクロール深度は実際には後からレポートされるもので、まだレポートされていないイベントはフィルタでは値が0と仮定されることにご注意ください。

Custom フィルタ

custom フィルタはイベントに関連付けられたカスタムパラメータを指定するものです。カスタムのキーと値のペアについての名称と記法はアプリケーション次第であり、どのようにカスタムパラメータを使用・送信しているのかは各お客様によってカスタムで設定、制御されているものです。

  • event フィルタと同様に、一つのグループとアイテムにマッチするフィルタの基本的な形式は次の通りです:

    {"type":"custom", "group":"cx_source", "item":"recs"}
    
  • 同じグループの複数値にマッチするケース:

    {"type":"custom", "group":"cx_source", "items":["recs", "ad"]}
    
  • null または 値が空ではない、任意の値にマッチするケース:

    {"type":"custom", "group":"cx_source"}
    


Keyword フィルタ

keyword フィルタはコンテンツに関連した属性値でフィルタをかける場合に使用します。例えば、スポーツカテゴリに属する記事のページビューイベントのみに絞りたい場合、あるいは特定の人物について記載のあるページに対するイベントのみ、という場合です。このようなキーワードフィルタに使用できるプロパティはコンテンツプロファイルのページに記載しています。

  • このフィルタの基本的な形式は次の通りです:

    {"type":"keyword", "group":"person", "item":"marit bjørgen"}
    
  • イベントフィルタと同様に複数アイテムのいずれかにマッチするフィルタを定義できます。この場合はgroupを指定しなければなりません:

    {"type":"keyword", "group":"person", "items":["marit bjørgen", "therese johaug"]}
    
  • null または 値が空ではない、任意の値にマッチするケースも記述できます:

    {"type":"keyword", "group":"person"}
    
  • time のフィールド(start, stop)に対する範囲指定:

    {"type":"keyword", "group":"publishtime", "start":"1990-06-20T00:00:00+0900", "stop":"-3y"}
    {"type":"keyword", "group":"publishtime", "start":"-5d"}
    {"type":"keyword", "group":"publishtime", "start":"-5d", "stop": "+10d"}
    {"type":"keyword", "group":"publishtime", "stop":"2020-01-22T00:00:00+0900"}
    
  • 追加でアイテムの最小/最大の重みを指定することができます。

    {"type":"keyword", "group":"person", "item":"marit bjørgen", "minWeight":0.25, "maxWeight":0.75}
    

    – デフォルトは "minWeight" が 0.0 で "maxWeight" は 1.0です。
     

User keyword フィルタ

user-keyword フィルタはユーザが過去に読んだコンテンツをベースに推測されたユーザキーワードに基づいたフィルタリングに使用します。例えば、銀行取引に関心のあるユーザ、あるいはカスタムタクソノミー ツリーの特定のトピックに興味のあるユーザからのページビューイベントのみに絞りたいという場合に使用します。

  • イベントフィルタと同様に、一つのグループとアイテムにマッチするフィルタの基本的な形式は次の通りです:

    {"type":"user-keyword", "group":"cxs-categories", "item":"news/business/bank"}
    
  • 同じグループの複数値にマッチするケース:

    {"type":"user-keyword", "group":"cxs-categories", "items":["news/business/bank", "news/business/investments"]}
    
  • nullでない任意の値にマッチするケース:

    {"type":"user-keyword", "group":"cxs-categories"}
    
  • 追加でアイテムの最小/最大の重みを指定することができます。

    {"type":"user-keyword", "group":"cxs-categories", "item":"news/business/bank", "minWeight":0.25, "maxWeight":0.75}
    

    – デフォルトは "minWeight" が 0.0 で "maxWeight" は 1.0です。

User interestフィルタ

user-interest フィルタは推測されたユーザーの興味に基づいて、フィルタ条件を指定します。 
このフィルタは /traffic/user/interest と同じ /traffic/user/keyword  のサブセットと同様キーワードフィルタとして使われます。
下記の例との違いは指定の"type"です。

このフィルタは呼び出し側で利用可能な外部ユーザIDを考慮しないことにご注意ください。

  • イベントフィルタと同様に、基本的な形式は"group"と"item"を指定します。

    {"type":"user-interest", "group":"cxs-categories", "item":"news/business/bank"}
    
  • 同じグループであれば、複数のアイテムを指定することもできます。

    {"type":"user-interest", "group":"cxs-categories", "items":["news/business/bank", "news/business/investments"]}
    
  • もしくは、一切アイテムを指定しない形式(nullで無い、いずれかのアイテムにヒットします。)

    {"type":"user-interest", "group":"cxs-categories"}
    
  • 追加でアイテムの最小/最大の重みを指定することができます。

    {"type":"user-interest", "group":"cxs-categories", "item":"news/business/bank", "minWeight":0.25, "maxWeight":0.75}
    

    – デフォルトは "minWeight" が 0.0 で "maxWeight" は 1.0です。

User preference フィルタ

user-preference フィルタは targetFilter で付与した設定したユーザ群とマッチします。(指定したtargetFilterに一致するイベント数) / (フィルタに一致するイベント数) > threshold(閾値) をもつユーザについて、付与したフィルタに一致するイベントが含まれます。

以下の例では business and finance の記事をよく読むユーザが読んだ記事を含みます。

{
  "type": "user-preference",
  "filter": {                      # article として分類されるページでコンテンツプロファイルを持つページビューを対象とします
    "type": "keyword", 
    "group": "pageclass", 
    "item": "article" 
  },
  "threshold": 0.85,               # 以下で指定したフィルタで読んだ記事の85%がその対象であったユーザを対象とします
  "targetFilter": {                # コンテンツプロファイルの classification(IAB Classification) に business and finance 持っているユーザを対象とします
    "type": "keyword",
    "group": "classification", 
    "item": "business-and-finance"
  }
}

Top user preference フィルタ

top-user-preference フィルタは指定したターゲットフィルタ上位のユーザーとマッチします。
これは、ターゲットフィルターに一致するイベント数 / フィルターに一致するイベント数 でのトップユーザーに対して、指定したフィルタに一致するイベントを含むことになります。

次の例では、ビジネスや金融の記事を強く好む上位85%のユーザーの記事閲覧が含まれます:

{
  "type": "top-user-preference",
  "filter": { # We consider pageviews
  "type": "keyword", # with content profile
  "group": "pageclass", # classifying the page
  "item": "article" # as an article.
   },
   "percent": 0.85, # We include article reads for the top 85% users of their read articles
   "targetFilter": { # having
     "type": "keyword", # content profile
     "group": "classification", # with IAB classification
     "item": "business-and-finance" # business and finance.
   }
}

percent または count を指定することは可能ですが、両方を指定することはできません。
percent を指定すると、ユーザーの上位Xパーセントが含まれます。
count を指定すると、代わりにユーザーの上位X人が含まれます。


countの 指定の例:

{
  "type": "user-preference",
  "filter": { # We consider pageviews
  "type": "keyword", # with content profile
  "group": "pageclass", # classifying the page
  "item": "article" # as an article.
  },
  "count": 10, # We include article reads for the top 10 users of their read articles
  "targetFilter": { # having
    "type": "keyword", # content profile
    "group": "classification", # with IAB classification
    "item": "business-and-finance" # business and finance.
  }
}

External user キーワードフィルタ(DMP 1stパーティデータ

user-external キーワードフィルタはユーザに関連する外部キーワードによってフィルタリングを行います。
例えば、定期購読者としてタグ付け(/profile/user/external/updateによって)されているユーザからのページビューイベンドのみに絞り込むような場合に使用します。

  • イベントフィルタと同様に、一つのグループとアイテムにマッチするフィルタの基本的な形式は次の通りです:

    {"type":"user-external", "group":"subscriber", "item":"yes"}
    {"type":"user-external", "group":"byear", "item":1942}
    
  • 同じグループの複数値にマッチするケース:

    {"type":"user-external", "group":"subscriber", "items":["yes", "no"]}
    {"type":"user-external", "group":"byear", "items":[1942, 1940]}
    
  • 数値アイテムへの範囲フィルタ(min, max):

    {"type":"user-external", "group":"byear", "min":1940, "max":1980}
    {"type":"user-external", "group":"byear", "min":1940}
    {"type":"user-external", "group":"byear", "max":2000}
    
  • 十進数アイテムへの範囲フィルタ(min, max):

    {"type":"user-external", "group":"price", "min":50.35, "max":90.98}
    {"type":"user-external", "group":"price", "min":50.35}
    {"type":"user-external", "group":"price", "max":90.98}
    
  • 時間アイテムへの範囲フィルタ(start, stop):

    {"type":"user-external", "group":"subscription-date", "start":"1990-06-20T00:00:00+0900", "stop":"-3y"}
    {"type":"user-external", "group":"subscription-date", "start":"-5d"}
    {"type":"user-external", "group":"subscription-date", "start":"-5d", "stop": "+10d"}
    {"type":"user-external", "group":"subscription-date", "stop":"2020-01-22T00:00:00+0900"}
    
  • nullでない任意の値にマッチするケース:

    {"type":"user-external", "group":"subsriber"}
    

Intent フィルタ

intent フィルタはユーザの意図に関連したフィルタリングを行います。例えば、旅行を意図したページビューのみに絞るような場合です。ここで、興味のようなユーザキーワードと違って、このフィルタは指定された意図(インテント)を持ったユーザのすべてのイベントを選択するのではなく、その意図に関連したイベントのみを選択します。そのようなユーザのすべてのイベントを取得するには、explodeUsersフィルタでラップしなければなりません(explodeUsersについては後述します)。

  • イベントフィルタと同様に、一つのグループとアイテムにマッチするフィルタの基本的な形式は次の通りです:

    {"type":"intent", "group":"cxd-intent", "item":"travel"}
    
  • 同じグループの複数値にマッチするケース:

    {"type":"intent", "group":"cxd-intent", "items":["travel", "shopping"]}
    
  • nullでない任意の値にマッチするケース:

    {"type":"intent", "group":"cxd-intent"}
    

Active time フィルタ

activeTime フィルタはユーザの滞在時間によるフィルタリングを行います。アクティブ時間の最大・最小を秒単位で指定することができ、デフォルト値は "min":0 および "max":1800 (30分)です。

{"type":"activeTime", "min":180, "max":360}

アクティブタイムは事後のレポート(ユーザーがサイトに戻ってきた場合に取得)であり、レポートされなかったイベント(サイトに戻らなかった場合)はアクティブタイムを0とします。

このフィルタは廃止予定です。代わりに event-metrics フィルタをご利用ください。

User フィルタ

  user フィルタはユーザに関する属性に基づくフィルタリングを行います。

  • 最も簡単な形式では、特定のユーザからのイベント数によってフィルタを掛けられます:

    {"type":"user", "having":{"min":5, "max":10}}
    

    minまたはmaxのどちらかが指定されなければなりません。minのデフォルト値は0、maxのデフォルト値は無限大です。

  • フィルタをかける対象イベントを別のフィルタであらかじめ絞ることも可能です:

    {"type":"user", "having":{"min":5, "max":10, "filter":{"type":"custom", "group":"action", "item":"purchase"}}}
    
  • さらに、イベントデータのカーディナリティによってユーザを絞ることもできます。これは指定のイベントグループと指定ユーザに関連付けられたアイテムの種類の数によるフィルタです。

    {"type":"user", "having":{"type":"event", "group":"deviceType", "min":2}}
    

    このフィルタにはサブフィルタを使用することもできます:

    {"type":"user", "having":{"type":"event", "group":"url", "min":5, "max":10, "filter":{"type":"keyword", "group":"pageclass", "item":"article"}}}
    


このフィルタが havinghistoryFields と併せて使われた場合、フィルタ適用後に残ったイベントは別の buckets (時間区分け)に分割されます。

User ID フィルタ

これに加えて、ユーザフィルタはユーザIDによってフィルタリングを行うことも可能です。ビルトインのユーザIDのタイプ cx(ファーストパーティクッキー)を外部ユーザID(addExternalId()または/profile/user/external/link/updateコールで登録されたもの;外部ユーザID参照)とともに使用することができます。結果はフィルタで指定されたユーザに絞られます。

{"type":"user", "group":"cx", "item":"12837483788478722"} 

外部ユーザIDについては、グループは登録されたcustomer prefixがセットされなくてはなりません。また、アイテムはお客様が指定したIDです。例えばユーザID XYZ会社アカウント(登録されたIDタイプ"xyz" -- カスタマープリフィックスと同じ)に登録されたsubscriber14でフィルタすると、そのユーザのトラフィックのみを集計します:

{"type":"user", "group":"xyz", "item":"subscriber14"}

アクセス権限のあるサイトグループ(アカウント)に属するカスタマープリフィックスのみを参照可能です。

呼び出すことができるのは、お使いのアカウントでアクセス可能なサイトグループにて設定されている貴社用のカスタマープリフィックスのみであることにご注意ください。また内部では指定されたIDを Piano Insight 固有のID(ユニークブラウザID)にマッピングしますが、それ以外の外部IDのマッピングは考慮しません。


User explosion フィルタ

explodeUsers フィルタはサブフィルタでマッチしたイベントのセットを同じユーザからの他のすべてのイベントに拡張します。論理的にはSQLのネストされたSELECT文に似ています。

このフィルタでは 外部ユーザーID は考慮されません。

ユーザexplosionのロジックは2つのモードがあります:

  • デフォルトのallEventsモードはサブフィルタにマッチしたユーザのすべてのイベントを選択するものです。

    {"type":"explodeUsers", "filter":{"type":"custom", "group":"action", "item":"purchase"}}
    

     この場合は explodeUsers は以下のフィルタと同じです:

    {"type":"user", "having":{"min":1, "filter":{"type":"custom", "group":"action", "item":"purchase"}}}
    
  • consecutiveEvent モードはサブフィルタにマッチした最初のイベント以降のイベントのみを選択するものです。この差異を説明するために、Facebookが参照元のイベントでフィルタした場合で、あるユーザが対象サイトを訪れその後Facebookに行き、そしてまたFacebookからreferされて対象サイトに戻ってきたとします。allEventモードの場合には指定された期間中のサイトに対するすべてのイベントが含まれます(Facebookに行く前のイベントも含めて)が、consecutiveEventsモードではFacebookからreferされてサイトに戻った以降のイベントのみが含まれます。

    {"type":"explodeUsers", "filter":{"type":"custom", "group":"action", "item":"purchase"}, "mode":"consecutiveEvents"}
    

    この場合には、consecutiveEventsモードは特定のイベント以降にあるいはその前に何が起こったかという興味深い情報を与えてくれます:

    {"type":"and", "filters":[
        {"type":"explodeUsers", "filter":{"type":"custom", "group":"action", "item":"purchase"}, "mode":"allEvents"},
        {"type":"not", "filter":{"type":"explodeUsers", "filter":{"type":"custom", "group":"action", "item":"purchase"}, "mode":"consecutiveEvents"}}]}
    
  • previousEvent モードは、フィルタリングの記述が最初に満たされる前に起こったイベントのみを選択します。このモードの可能な使用例は、コンバージョン イベントを生成する前にユーザーが訪れたページがどれであるかを知ることです。

    {"type":"explodeUsers", "filter":{"type":"event", "group":"url", "item":"https://www.mywebsite.com/conversionpage.html"}, "mode":"previousEvent"}
    
  • previousEvent と同様に、nextEvent モードは、フィルタリングの記述が最初に満たされた後に起こるイベントのみを選択します。

    {"type":"explodeUsers", "filter":{"type":"event", "group":"url", "item":"https://www.mywebsite.com/conversionpage.html"}, "mode":"nextEvent"}
    

このフィルタがhistoryFieldsと併せて使用された場合、フィルタ適用後に残ったイベントは別の buckets に分解されます

User implosion フィルタ

implodeUsers フィルタは、サブフィルタの結果から、各ユーザーの最初または最後のイベントだけの結果に絞り込みます。

このフィルタでは 外部ユーザーID は考慮されません。

ユーザ implosion フィルタは、下記の2つのモードをサポートします。

  • firstEvent モード:各々のユーザについて、firstEvent モードはセットしたサイトと期間のサブフィルタに一致するイベントで、(各時間のbucketで)最初のイベントを選択します。

    {"type":"implodeUsers", "mode":"firstEvent", "buckets": 1, "filter":{"type":"custom", "group":"action", "item":"addToCart"}}
    

     デフォルトの buckets 数は1です。あるいはサブフィルタや buckets 数を指定せずにフィルタを使用することもできます。

    {"type":"implodeUsers", "mode":"firstEvent"}
    
  • lastEvent モード: 各々のユーザについて、lastEventモードはセットしたサイトと期間のサブフィルタに一致するイベントで、(各時間のbucketで)最後のイベントを選択します。

    {"type":"implodeUsers", "mode":"lastEvent", "buckets": 1, "filter":{"type":"custom", "group":"action", "item":"addToCart"}}
    

     デフォルトの buckets 数は1です。あるいはサブフィルタや buckets 数を指定せずにフィルタを使用することもできます。

    {"type":"implodeUsers", "mode":"lastEvent"} 
    


このフィルタをhistoryFieldsと組み合わせて使用した場合、このフィルタが適用された後のイベントデータが、異なる buckets にスライスされます。これはこのフィルタに historyFields と同数の buckets を指定することで回避できます。

セッション開始・セッション終了・直帰フィルタ

セッションフィルタは、セッションの開始、終了、直帰に対するイベントに絞り込むことができます。30分間アクセスがないとセッションが切れるので、30分以降のアクセスは、別セッションとしてカウントされます。

{"type":"sessionStart"} 
{"type":"sessionStop"} 
{"type":"sessionBounce"} 

havingフィルタと併用することにより、回数での絞込を行うことができます。

{"type":"user", "having":{"min":5, "filter":{"type":"sessionStart"}}}

Time フィルタ

time フィルタはネストされたフィルタに対して指定期間で絞るものです。タイムフィルタの記述はTraffic time specificationに従ってstart / stop で期間を指定します。クエリでリクエストした集計期間外でフィルタを適用するケースもサポートしています。指定したタイムフィルタはすべてのフィルタに適用されます。"start"または"stop"が明示されていない場合には、APIリクエストの start , stop が仮定されます。したがって time フィルタを使用する場合には startstop の両方を明示することを推奨します。

{"type":"time", "start":"-2d", "filter":{"type":"event", "group":"deviceType", "item":"Mobile"}}

フィルタがexplodeUsersまたはユーザフィルタのhavingと併せて使用された場合、イベントが拡張されるのは指定された期間に限られます。すなわち、指定期間外のイベントは0になります。

time フィルタはサブフィルタなしでも利用でき、指定した期間の全てのイベントを抽出します。タイムフィルタ自体を explodeuser や having フィルタ内で使用できます。

{"type":"time", "start":"-1M", "stop":"-1w"}

このフィルタはユーザのタイムゾーンに基づき、ユーザのローカルタイムでフィルタすることができます。ローカルの時間、日、特定の曜日でフィルタすることもできます。

Hour Range

以下のようにHour Rangeを用いたフィルタによって、ユーザのローカルタイムで朝8時以降16時までの行動をフィルタすることもできます。

{"type":"time", "startHour":8, "stopHour":16}

日をまたいで使用することもできます:

{"type":"time", "startHour":22, "stopHour":5}

これで22時以降の深夜までと朝の5時までの行動をフィルタすることができます。

Day Range

以下のように Day Rangeを用いたフィルタによって、ユーザのローカルタイムで平日の行動をフィルタできます。

{"type":"time", "startDay":"Monday", "stopDay":"Friday"}

週をまたいで使用することもできます:

{"type":"time", "startDay":5, "stopDay":1}

これは週の5日目から週の終わりまでと次の週の最初の日までの行動をフィルタできます。

Set of days

特定の日をフィルタする

{"type":"time", "days":[2, 6]}

これは週の2日目と6日目に発生した行動をフィルタします。

名前

タイプ

説明

start

Integer or String

Traffic time specification で指定する集計の開始時間を設定します。デフォルト値は 1時間前("-1h") です。
start で指定した時間は含まれます。

stop

Integer or String

Traffic time specification で指定する集計の終了時間を設定します。デフォルト値は 現在("-0h") です。
stop で指定した時間自体は除外されます。すなわち:

start <= traffic time period < stop

startHour

Integer

ユーザのローカルタイムに基づく開始時間で、0から23までの整数です。範囲指定の開始を定義します(ローカルタイムの startHour/stopHour の範囲)。

stopHour

Integer

ユーザのローカルタイムに基づく終了時間で、0から23までの整数です。範囲指定の開始を定義します(ローカルタイムの startHour/stopHour の範囲)。

startDay

Integer or St

ユーザのローカルタイムに基づく開始日で、1から7までの整数または曜日の名前の文字列(例:"Monday"、 "Tuesday")です。 範囲指定の開始を定義します(ローカルタイムの startDay/stopDay の範囲)。1が月曜日を意味します。

stopDay

Integer or St

ユーザのローカルタイムに基づく終了日で、1から7までの整数または曜日の名前の文字列(例:"Monday"、 "Tuesday")です。 範囲指定の終了定義します(ローカルタイムの startDay/stopDay の範囲)。

days

set of Integers

ユーザのローカルタイムの週の何日目かをフィルタします。指定する数値は1から7までの整数です。

Segment フィルタ

segment フィルタはセグメントIDとモードによって予め作成済みのセグメントをフィルターとして指定します。

  • デフォルトではシンプルにセグメントIDをフィルタに指定することで、作成済みのセグメントでトラフィックをフィルタリングします。

    {"type":"segment", "item":"00abfe6d40e"}
    

    これは "mode":"match" で指定するのと同じで、セグメントフィルタに一致する全てのイベントを抽出します。

    {"type":"segment", "mode":"match", "item":"00abfe6d40e"}
    
  • または "mode":"member" にすると特定のセグメントに一致するユーザーの全てのイベントを抽出します。このフィルタは利用可能な 外部ユーザID を考慮していないことにご注意ください。

    {"type":"segment", "mode":"member", "item":"00abfe6d40e"}
    
  • さらに "mode":"lookalike" はセグメントの オーディエンス拡張(Lookalike modeling) で定義されたユーザーの全てのイベントを抽出します。

    {"type":"segment", "mode":"lookalike", "item":"00abfe6d40e"}
    

Boolean フィルタ

Boolean フィルタはフィルタを組み合わせてより複雑なクエリを行うために使用します。上述のどのフィルタを組み合わせることができます。論理演算子として and / or / notをサポートしています。

{"type":"and", "filters":[
    {"type":"not", "filter":
        {"type":"event", "group":"referrerHost", "item":"abc.com"}
    },
    {"type":"not", "filter":
        {"type":"event", "group":"referrerHost", "item":"xyz.com"}
    }
]}


{"type":"not", "filter":
    {"type":"or", "filters":[
        {"type":"event", "group":"referrerHost", "item":"abc.com"},
        {"type":"event", "group":"referrerHost", "item":"xyz.com"}
    ]}
}

Context フィルタ

context フィルタは指定したフィルタが以下の特定のモードのいずれかで実行されます。

  • traffic

  • dmp

  • recs

  • conversion

  • propensity

フィルタはオプションで、省略すると指定された context のすべてのイベントにマッチするようになります。例えば {"type": "context", "mode": "propensity"} はすべての propensity イベントにマッチします。

Site フィルタ

site フィルタはサイトやサイトグループを基準にフィルタを指定します。

  • サイトでフィルタ:

    {"type": "site", "siteIds": ["8097"]}
    
  • 単一サイトではこのようにも記述できます:

    {"type": "site", "siteId": "8097"}
    
  • サイトグループでフィルタ:

    {"type": "site", "siteGroupIds": ["9087"]}
    
  • 単一サイトグループではこのようにも記述できます:

    {"type": "site", "siteGroupId": "9087"}
    

値の制限
展開された siteIds はリクエストオブジェクトで展開された siteIds のサブセットでなければなりません。

フィールドの制限

siteId, siteIds, siteGroupId, siteGroupIds のどれか一つをサイトフィルタに設定しなければなりません。何も設定しない、あるいはこれらのフィールドを一つ以上設定すると、エラーになります。

consent フィルタを使用すると、イベントに対して付与された同意に基づいて、フィルタを指定できます。詳しくは GDPRのセクションをご覧ください。

例:

# ユーザのセグメンテーションでの使用に同意のあるイベントをフィルタします
{"type": "consent", "purpose": ["segment"]}

サイトに同意が必要な場合、有効化されているセグメントのConsentフィルタがセグメントに自動的に適用されます。

値の制限

同意は以下の目的に沿って付与されます。

  • pv - ユーザの行動分析への使用に対する同意

  • segment - ユーザのセグメンテーションへの使用に対する同意

  • recs - ユーザへのレコメンド表示に対する同意

  • ad - パーソナライズド広告の表示に対する同意

  • device - デバイス関連データの収集・利用を許可するために使用される同意

  • geo - 位置情報を目的としたデータの収集・利用を許可するために使用される同意

Subnet フィルタ

subnet フィルタを使用すると、内部または外部サブネットから発生するイベントであるかどうかに基づいて、フィルタを指定できます。内部サブネットマスクはあらかじめ登録する必要があります。本機能のご利用をご希望の場合、設定は弊社側で行う必要がありますので、内部サブネットマスクをサポートまでお知らせください。

例:

# 外部トラフィックのみ
{"type": "subnet", "mode": "external"}

Mode
2つの mode がサポートされており、internal(内部) と external(外部)の2つのいずれかを指定することができます。

DMP フィルタ

DMPフィルタを利用することで、DMPパフォーマンスイベントのタイプでフィルタリング可能です。詳細はこちらをご参照ください。

Recs event フィルタ

event フィルタやDMPフィルタと似ていますが、recs-event のフィルタです(詳細は /recs/traffic をご覧ください)。各グループで最も人気のあるアイテムは /recs/traffic/event を使用してリスト化できます。

  • このフィルタの基本形式は以下の通りです:

    {"type":"recs-event", "group":"widget", "item":"widgetId123"}
    

Conversion event フィルタ

event フィルタや DMP event フィルタと似ていますが、conversion イベント用のフィルタ(参考: /conversion/traffic)です。/conversion/traffic/event を用いて、group ごとに最も人気のあるアイテムを表示できます。

  • このフィルタの基本形式は以下の通りです。

    {"type":"conversion-event", "group":"funnelStep", "item":"start"}
    

Propensity event フィルタ

event フィルターや DMP event フィルターと似ていますが、propensity event (/propensity/traffic 参照)によるフィルターです。/propensity/traffic/event を用いて、group ごとに最も人気のあるアイテムを表示できます。

  • このフィルタの基本形式は以下の通りです。:

    {"type":"propensity-event", "group":"type", "item":"SUBSCRIBE"}
    

Page フィルタ

Pageフィルターを使用すると、ページが受信したイベント数に基づいてページをフィルタリングできます。このフィルターは、特定の範囲のイベントを受信したページを選択するために、min および max パラメーター付きの having 句を使用します。

  • このフィルターの基本形式は以下の通りです:

{"type":"page", "having":{"min":1000, "max":5000}}

minパラメータは、ページが対象に含まれるために受信したイベントの最小数を指定します(少なくとも1000件以上である必要があります)。 max パラメータはイベントの最大数を指定します。 minのみが指定された場合、上限はありません。

  • イベントが2000件以上あるページをフィルタリングする:

{"type":"page", "having":{"min":2000}}
  • イベント数が1500件から3000件の間のページをフィルタリングする:

{"type":"page", "having":{"min":1500, "max":3000}}

Field パラメーター

オプションでフィールドパラメータを指定し、総ページビュー数ではなく特定の種類のイベントに基づいてフィルタリングできます:

  • セッション開始に基づいてページをフィルタリングする:

{"type":"page", "having":{"min":1000, "field":"sessionStarts"}}
  • セッション終了に基づいてページをフィルタリングする:

{"type":"page", "having":{"min":1500, "max":3000, "field":"sessionStops"}}
  • セッションバウンスに基づいてページをフィルタリングする:

{"type":"page", "having":{"min":1000, "field":"sessionBounces"}}
  • ページビュー数に基づいてフィルタリングする (デフォルト):

{"type":"page", "having":{"min":1000, "field":"events"}}

field パラメータの有効な値は次のとおりです:

  • events (default) - 総ページビューイベントに基づくフィルタ

  • sessionStarts - セッション開始イベントに基づくフィルタ

  • sessionStops - セッション終了イベントに基づくフィルタ

  • sessionBounces - セッションバウンスイベントに基づくフィルタ

イベント数は推定値です。低い数値(10,000イベント未満)の場合、精度が低下する可能性があります。

Composition フィルタ

Compositionノードで構成されるフィルター

  • このフィルターの基本形式は以下の通りです:

{"type":"composition, "tree": {
  "or": [
    {"segmentId": "id1"},
    {"segmentId": "id2"}
  ]
}}

Last updated: