イベントストラクチャ

    イベントストラクチャ

    • Event Category (string, required): イベント名です。全てのイベントにはイベントカテゴリー(イベント名)が必須で存在します。Airbridgeが収集するイベントのうち、イベントカテゴリー(イベント名)がないイベントはありません。

      • Event Action (string, optional): イベントの属性1です。

      • Event Label (string, optional): イベントの属性2です。

    • Event Value (float, optional): イベントの値(numeric)です。発生したイベントの価値を集計(aggregation)する時に有効です。

    • セマンティックアトリビュート(map, optional): Airbridgeであらかじめ定義したイベントのキー値の属性です。イベントカテゴリーによってセマンティックアトリビュートが定められています。詳細は以下の セマンティックアトリビュート のセクションを参照してください。

    • カスタムアトリビュート(map, optional): 自由に追加して活用できるイベントのキー値の属性です。詳細は以下の カスタムアトリビュート のセクションを参照してください。

    Event Category、Action、Labelのバリデーション仕様は FAQのセクションを確認してください。

    イベントタクソノミーを設計する時、カテゴリー、アクション、ラベルなどの属性名はあまり気にする必要はありません。

    Event Actionには必ずユーザーの行動を意味する値を、Event Labelには必ずラベルのような値を入れる必要はありません。重要なのは、Event Category(イベント名)は必須の属性で、ActionやLabelはActual Reportでより詳細にイベントを区別して見たい時に使う属性ということです。Event Category(イベント名)で全てのイベントを区別したいなら、Action、Labelを使う必要はありません。以下のイベントタクソノミーの例を参照してください。

    カスタムアトリビュートの代わりにAction、Labelを使う理由

    Event Category、Event Action、Event Labelの値はインテクシングして迅速にAggregationの値を提供できるできるため、活用度が高いです。

    Raw Data ExportやS3 Integrationを使って直接JSON Stringフォーマットのカスタムアトリビュートをパーシングし、データ分析に活用するケースのみ存在するなら問題ありませんが、Actual ReportでAggregationの値を確認したい時や、Raw Data Exportで属性別に区分されたカラムを確認したい時はAction、Labelを使うことを推奨します。

    イベントタクソノミーの例

    Action、Labelを使わない例

    Event Category

    Event Action

    Event Label

    Event Value

    Sample Code (Web)

    purhcase_card

    -

    -

    35

    airbridge.events.send("purchase_card", { "value": 35 })

    purchase_cash

    -

    -

    55

    airbridge.events.send("purchase_cash", { "value": 55 })

    Action, Labelを使わないActual Reportの例

    Action、Labelを使う例

    Event Category

    Event Action

    Event Label

    Event Value

    Sample Code (Web)

    add_to_wishlist

    Shoe

    364757-103

    35

    airbridge.events.send("add_to_wishlist", { "action": "Nike", "label": "364757-103", "value": 35000 })

    add_to_wishlist

    Cloth

    679421-480

    189

    airbridge.events.send("add_to_wishlist", { "action": "Adidas", "label": "679421-480", "value": 189000 })

    Action, Labelを使うActual Reportの例

    セマンティックアトリビュート

    セマンティックアトリビュートはAirbridgeのシステムであらかじめ定められたキー値です。Airbridgeはセマンティックアトリビュートを活用してRaw Data Exportのカラムを提供し、メディアで意図したパラメータの値を入れてポストバックを送信します。Event Category別のセマンティックアトリビュートについてはリンクを参照してください。

    キー

    タイプ

    説明

    totalValue

    float

    総売上高(商品価値の合計)

    contributionMargin

    float

    貢献利益の売上高

    currency

    string

    通貨

    totalQuantity

    int

    全体の数

    transactionID

    string

    取引ID

    cartID

    string

    カートID

    productListID

    string

    商品リストID

    inAppPurchased

    boolean

    アプリ内購入の判定
    true: アプリ内購入
    false: アプリ内購入に該当しない

    query

    string

    ユーザー検索クエリ

    products

    array

    商品リスト

    products.$0.productID

    string

    商品ID

    products.$0.name

    string

    商品名

    products.$0.price

    float

    商品価格

    products.$0.quantity

    int

    商品数

    products.$0.currency

    string

    通貨の単位

    products.$0.position

    int

    商品の位置

    1234567891011121314151617181920
    // Example code for semanticAttributes                     
    airbridge.events.send("purchase_card", {
      semanticAttributes: {
        transactionID: '1458132a-0d09-4944-a686-fcbee81b74f7',
        totalValue: 99,
        products: [{
          productID: "1234",
          name: "Nike 1",
          price: 55,
          currency: "USD",
          quantity: 1
        }, {
          productID: "1235",
          name: "Nike 2",
          price: 44,
          currency: "USD",
          quantity: 1
        }]
      }
    });

    semanticAttributes.totalQuantityはSDKやAPIなどでイベント収集の時に追加しなくても、プロダクトリストにquantity(semanticAttributes.products.$.quantity)が存在する場合、それらの値の合計が自動的に入り、Raw Data Exportで提供されます。

    <イベント送信の例 >

    123456789101112131415161718
    airbridge.events.addedToCart({
      products: [
        {
          productID: "1",
          name: "MacBook Pro",
          price: 1500000,
          quantity: 3
        },
        {
          productID: "2",
          name: "MacBook Air",
          price: 1500000,
          quantity: 2
        }
      ],
      cartID: "73926365",
      totalValue: 3000000
    });

    <イベント送信結果のセマンティックアトリビュート>

    1234567891011121314151617181920212223
    {
      "totalValue": 7500,
      "totalQuantity": 5,   // Total quantity of items are automatically summed
      "cartID": "73926365",
      "products": [
        {
          "quantity": 3,
          "productID": "1",
          "price": 1500,
          "name": "MacBook Pro",
          "currency": "USD",
          "position": 1
        },
        {
          "quantity": 2,
          "productID": "2",
          "price": 1500,
          "name": "MacBook Air",
          "currency": "USD",
          "position": 2
        }
      ]
    }

    払い戻し及び交換イベントの場合

    払い戻しや交換などのイベントを収集した時、products.$0.priceの値にマイナスの数字を入れて活用できます。
    例えば、お客様がKRW 12,000ウォンの靴を購入した後、KRW 10,000ウォンの商品に交換を完了した場合、以下の例のように利用できます。

    12345678
    airbridge.events.send("exchange", {
        semanticAttributes: {
            products: [{
                "name": "shoe",
                "price": -2000
           }]
        }
    })

    カスタムアトリビュート

    カスタムアトリビュートを活用して、セマンティックアトリビュートで提供されない属性値を自由に定義して利用できます。カスタムアトリビュートを使ってイベントのカスタム属性値をメディアにポストバックすることや、Raw Data Exportで活用することができます。

    1234567
    //Example code for customAttributes
    airbridge.events.send("purchase_card", {
      "customAttributes": {
        "userRank": "1",
        "itemType": "sword"
      }
    })

    カスタムアトリビュートの代わりにセマンティックアトリビュートを使うメリット

    Raw Data Export(S3ダンプを含む)でイベント属性別のカラムが提供されます。(Search Query、Transaction ID、Product IDなど各属性別にデータが提供され、カスタムアトリビュートを使う場合はJSON Stringで提供されます。)

    メディアへのポストバックやサードパーティソリューションイベントを送信する時、イベントの属性が自動でマッピングされます。例えば、ユーザー検索クエリの値を受信するメディアではAirbridgeとポストバックを連携する際にsemanticAttributes.queryをすでに連携してあるため、セマンティックアトリビュートを使えば広告主の方では別途作業を行う必要がありません。

    このページは役に立ちましたか?

    フィードバックを共有