Wunderkind (Signals)
Wunderkind は、独自の識別技術を使用して匿名のWebサイト訪問者を認識し、実用的なメールアドレスに解決するeコマースパフォーマンスプラットフォームです。平均して、WunderkindはWebサイトトラフィックの3~5%の識別率を40~60%に拡大し、ブランドが既存のメールサービスプロバイダー (ESP) を通じてパーソナライズされた1対1のメッセージを大規模にトリガーできるようにします。
この統合はWunderkindによって管理されています。サポートについては、support.wunderkind.co をご覧ください。
統合について
Wunderkind Signals 統合を使用すると、カート放棄、商品放棄、値下げなどの購買意欲の高い行動シグナルによって、Braze でリアルタイムのキャンバスジャーニーをトリガーできます。Wunderkind は Web サイト上の匿名ユーザーを識別し、その ID を配信可能なメールアドレスに解決します。さらに、構造化されたシグナルペイロードをキャンバスエントリ API 経由で Braze に配信し、事前に設定したメールフローを自動的に開始します。
前提条件
| 要件 | 説明 |
|---|---|
| Wunderkind アカウント | Signals が有効になっている Wunderkind アカウントが必要です。利用資格については、Wunderkind の担当者にお問い合わせください。 |
| Braze アカウント | キャンバスにアクセスできる Braze アカウントが必要です。Wunderkind チームにアカウントのシートを付与する必要があります。詳しくは、Grant Wunderkind access to your Braze account を参照してください。 |
| Braze REST APIキー | 設定時に、特定の権限を持つ専用の API キーを作成します(ステップ1を参照)。 |
| ユーザー識別 | Wunderkind は通常、alias_label: "wknd_email_id" を指定した user_alias を使用して、消費者を Braze のユーザーに紐付けます(多くの場合、メールアドレスを alias_name として使用します)。/canvas/trigger/send の各受信者には、external_user_id、user_alias、braze_id、email のいずれか1つだけを含める必要があります(受信者オブジェクト)。email を使用する場合は、prioritization を含めてください。user_alias を使用する場合、トリガーの前にプロファイルが Braze に存在している必要があります。まず /users/track または /users/identify でユーザーとエイリアスを作成または更新してください。詳しくは、制限事項を参照してください。 |
仕組み
Wunderkind が購入意欲の高い匿名ユーザーを特定し、その ID を解決すると、/canvas/trigger/send エンドポイントを使用してシグナルペイロードを Braze に送信します。これにより、そのユーザーに対して関連するキャンバスジャーニーがリアルタイムでトリガーされます。
技術的な概要の詳細については、Wunderkind Developer Portal を参照してください。
統合
ステップ 1: Wunderkind 用の Braze API キーを作成する
Braze ダッシュボードで次の操作を行います。
- 設定 > API キー に移動し、新しい API キーを作成 をクリックします。
- キーにわかりやすい名前を付けます (例:
Wunderkind Signals)。 - Braze アカウントへのアクセス権を Wunderkind に付与するに記載されている権限を付与します。
- API キーをコピーします。このキーは次のセクションで Wunderkind プラットフォームに入力します。

Wunderkind Signals では、Braze の REST API リクエストは OAuth トークンではなく REST API キーで認証されます。ダッシュボードで専用の API キーを作成し、そのキーを Wunderkind に提供してください。
ステップ 2: Braze を Wunderkind プラットフォームに接続する
- Wunderkind プラットフォームにログインし、Integrations Hub に移動します。
- Braze タイルを選択し、Connect を選択します。
- Braze REST API キーを入力し、クラスターを選択します。
- Save を選択します。
ステップ 3: 新しい Braze アセットを確認する
有効化されると、Wunderkind は Wunderkind の担当者と合意した戦略に基づき、Braze ワークスペースに新しい実装アセットをプロビジョニングします。
| アセットタイプ | Wunderkind の作成方法 |
|---|---|
| Content Blocks | 自動 |
| API トリガーのキャンバス | マネージドサービス |
| タグ、カスタム属性、リンクテンプレート | マネージドサービス |
ステップ 4: キャンバスの設定を完了する
各 Signals キャンバスについて、Braze のドラッグ&ドロップエディターまたは HTML を使用してメールテンプレートを作成します。
- Wunderkind は送信時に、
/canvas/trigger/sendで各受信者のcontextオブジェクトに商品データとセッションデータを入力します。 - テンプレートでそのペイロードと Liquid を使用する方法の詳細な手順については、Wunderkind ヘルプセンターの Complete キャンバス setup を参照してください。
ステップ 5: キャンバスの適格性を確認する
各 Signals キャンバスについて、ターゲットオーディエンス設定に移動し、Wunderkind のデフォルトのエントリーオーディエンスと終了基準を確認します。
- ユーザーにメッセージを過度に送信しないようにするには、ユーザー中心のレート制限を参照してください。
- ユーザーが購入した後もキャンバスメッセージを受信し続けないように設定を調整します。たとえば、例外として 購入を行う を追加します。
- 一部の Signals キャンバスには、ユーザーが最も購買意欲の高いメッセージを受け取れるよう、カスタム属性フィルターがあらかじめ設定されています。
- キャンバスの適格性と優先度の詳細については、Wunderkind ヘルプセンターの Review キャンバス eligibility を参照してください。
ステップ 6: テストして開始する
Wunderkind は本番稼働前にエンドツーエンドの QA を実施します。
- シグナルが API エラーなしで正しいキャンバス ID に配信されていることを確認します。
- レンダリングされたメールテンプレートで、
contextフィールド (商品名、画像、URL) が正しく入力されていることを確認します。 - Wunderkind のモック商品を使用してテンプレートをプレビューする手順については、Wunderkind ヘルプセンターの Test and launch Signals for Braze を参照してください。
QA に合格すると、Wunderkind の実装マネージャーがお客様のチームと本番環境での開始を調整します。
キャンバスコンテキストペイロード
Wunderkind は 6 種類のシグナルタイプに対応しています。各シグナルタイプは、/canvas/trigger/send でその受信者の context オブジェクト内に、それぞれ異なるキーと値のセットを送信します (API トリガー配信を使用してキャンバスメッセージを送信を参照)。WkPurpose フィールドは、そのペイロード内のシグナルタイプを識別します。
共通フィールド (すべてのキャンバスタイプ)
| プロパティ | タイプ | 説明 |
|---|---|---|
Origin |
文字列 | 常に "wunderkind" |
DataOnly |
文字列 | 常に "Y"。Wunderkind がデータレイヤーとしてのみ機能し、送信は Braze が実行することを示します |
UserType |
文字列 | "prospect" または "customer" |
WkChannel |
文字列 | この統合では常に "email" |
WkPurpose |
文字列 | シグナルタイプの識別子 (このセクションのキャンバスごとの値を参照) |
WKCouponCode |
文字列 | クーポンコード (該当する場合。使用しない場合は空文字列) |
WKCouponPurpose |
文字列 | クーポンオファーの説明 (使用しない場合は空文字列) |
Items |
配列 | 商品オブジェクトの配列 (このセクションの商品フィールドを参照) |
WkOpen |
文字列 | レポート目的で使用できるトラッキングピクセル |
商品アイテムフィールド
| プロパティ | タイプ | 説明 |
|---|---|---|
WkCopy |
文字列 | 商品名 |
WkId |
文字列 | 商品 ID |
WkImageUrl |
文字列 | 商品画像の URL |
WkUrl |
文字列 | 商品詳細ページの URL |
WkPrice |
文字列 | 元の価格 (値下げキャンバスのみ) |
WKSalePrice |
文字列 | セール価格 (値下げキャンバスのみ) |
WkQuantity |
文字列 | 残りの在庫数 (在庫僅少キャンバスのみ) |
キャンバス固有のフィールドと WkPurpose の値
| キャンバスタイプ | WkPurpose の値 |
追加フィールド |
|---|---|---|
| カート放棄 | "cart abandonment" |
WkCartReplenUrl:カートを復元するための URL |
| 商品放棄 | "product abandonment" |
— |
| カテゴリーの振り返り | "category recap" |
WkCategoryUrl:閲覧したカテゴリーの URL |
| 再入荷 | "back in stock" |
— |
| 値下げ | "price drop" |
各アイテムの WkPrice、WKSalePrice |
| 在庫僅少 | "low stock" |
各アイテムの WkQuantity |
ペイロードの例
recipients 内の各オブジェクトには、external_user_id、user_alias、braze_id、email のいずれか 1 つだけを含める必要があります。詳しくは、受信者オブジェクトを参照してください。

各例では Braze の受信者識別子を1 つだけ使用しています。最初の 6 つは user_alias のみを使用し、最後の例は email と prioritization のみを使用しています。レビューツールがその値 ("email") を Braze の受信者 email フィールドと混同しないよう、例の JSON では context 内の WkChannel キーを省略しています。本番環境では、共通フィールド (すべてのキャンバスタイプ) の表に記載されているとおり、context に "WkChannel": "email" を含めてください。
以下の例では、Wunderkind が ID を解決する方法に合わせて、user_alias を wknd_email_id とともに使用しています。
カート放棄のペイロード例
{
"canvas_id": "<your_canvas_id>",
"recipients": [
{
"user_alias": {
"alias_name": "[email protected]",
"alias_label": "wknd_email_id"
},
"context": {
"Origin": "wunderkind",
"DataOnly": "Y",
"UserType": "prospect",
"WkOpen": "https://example.com/cart",
"WkPurpose": "cart abandonment",
"WKCouponCode": "",
"WKCouponPurpose": "",
"WkCartReplenUrl": "https://example.com/cart/replenish",
"Items": [
{
"WkCopy": "Product name",
"WkId": "012345",
"WkImageUrl": "https://example.com/image.jpg",
"WkUrl": "https://example.com/product"
}
]
}
}
]
}
商品放棄のペイロード例
{
"canvas_id": "<your_canvas_id>",
"recipients": [
{
"user_alias": {
"alias_name": "[email protected]",
"alias_label": "wknd_email_id"
},
"context": {
"Origin": "wunderkind",
"DataOnly": "Y",
"UserType": "prospect",
"WkOpen": "https://example.com/product",
"WkPurpose": "product abandonment",
"WKCouponCode": "",
"WKCouponPurpose": "",
"Items": [
{
"WkCopy": "Product name",
"WkId": "012345",
"WkImageUrl": "https://example.com/image.jpg",
"WkUrl": "https://example.com/product"
}
]
}
}
]
}
カテゴリーの振り返りのペイロード例
{
"canvas_id": "<your_canvas_id>",
"recipients": [
{
"user_alias": {
"alias_name": "[email protected]",
"alias_label": "wknd_email_id"
},
"context": {
"Origin": "wunderkind",
"DataOnly": "Y",
"UserType": "prospect",
"WkOpen": "https://example.com/category",
"WkPurpose": "category recap",
"WKCouponCode": "",
"WKCouponPurpose": "",
"WkCategoryUrl": "https://example.com/category",
"Items": [
{
"WkCopy": "Product name",
"WkId": "012345",
"WkImageUrl": "https://example.com/image.jpg",
"WkUrl": "https://example.com/product"
}
]
}
}
]
}
再入荷のペイロード例
{
"canvas_id": "<your_canvas_id>",
"recipients": [
{
"user_alias": {
"alias_name": "[email protected]",
"alias_label": "wknd_email_id"
},
"context": {
"Origin": "wunderkind",
"DataOnly": "Y",
"UserType": "prospect",
"WkOpen": "https://example.com/product",
"WkPurpose": "back in stock",
"WKCouponCode": "",
"WKCouponPurpose": "",
"Items": [
{
"WkCopy": "Product name",
"WkId": "012345",
"WkImageUrl": "https://example.com/image.jpg",
"WkUrl": "https://example.com/product"
}
]
}
}
]
}
値下げのペイロード例
{
"canvas_id": "<your_canvas_id>",
"recipients": [
{
"user_alias": {
"alias_name": "[email protected]",
"alias_label": "wknd_email_id"
},
"context": {
"Origin": "wunderkind",
"DataOnly": "Y",
"UserType": "prospect",
"WkOpen": "https://example.com/product",
"WkPurpose": "price drop",
"WKCouponCode": "",
"WKCouponPurpose": "",
"Items": [
{
"WkCopy": "Product name",
"WkId": "012345",
"WkImageUrl": "https://example.com/image.jpg",
"WkUrl": "https://example.com/product",
"WkPrice": "49.99",
"WKSalePrice": "39.99"
}
]
}
}
]
}
在庫僅少のペイロード例
{
"canvas_id": "<your_canvas_id>",
"recipients": [
{
"user_alias": {
"alias_name": "[email protected]",
"alias_label": "wknd_email_id"
},
"context": {
"Origin": "wunderkind",
"DataOnly": "Y",
"UserType": "prospect",
"WkOpen": "https://example.com/product",
"WkPurpose": "low stock",
"WKCouponCode": "",
"WKCouponPurpose": "",
"Items": [
{
"WkCopy": "Product name",
"WkId": "012345",
"WkImageUrl": "https://example.com/image.jpg",
"WkUrl": "https://example.com/product",
"WkQuantity": "1"
}
]
}
}
]
}
メール識別子の例 (代替)
user_alias の代わりに Braze の email フィールドを使用してキャンバスをトリガーする場合、受信者には email と prioritization のみを含める必要があります (API トリガー配信を使用してキャンバスメッセージを送信を参照)。context オブジェクトは他の例と同じです。
{
"canvas_id": "<your_canvas_id>",
"recipients": [
{
"email": "[email protected]",
"prioritization": ["unidentified", "most_recently_updated"],
"context": {
"Origin": "wunderkind",
"DataOnly": "Y",
"UserType": "prospect",
"WkOpen": "https://example.com/product",
"WkPurpose": "product abandonment",
"WKCouponCode": "",
"WKCouponPurpose": "",
"Items": [
{
"WkCopy": "Product name",
"WkId": "012345",
"WkImageUrl": "https://example.com/image.jpg",
"WkUrl": "https://example.com/product"
}
]
}
}
]
}
Liquid の使用例
Wunderkind が /canvas/trigger/send を呼び出すと、各受信者の context オブジェクトで渡したキーと値がキャンバスのエントリデータになります。メッセージステップでは、context Liquid 名前空間を使用してそれらを参照します。たとえば、キャンバスコンテキストオブジェクトとメッセージで説明されているように、{{context.${WkPurpose}}} と記述します。正しい Liquid 構文を使用する以外に、追加の設定は必要ありません。
for タグの条件内に Braze の出力タグをネストしないでください。Liquid の使用で説明されているように、まず context の Items 配列を変数に代入してから、ループ処理を行います。assign の行では、Braze のキャンバスエントリ形式 {{context.${Items}}} を使用しています (サポートされているパーソナライゼーションタグを参照)。
{% assign wk_items = {{context.${Items}}} %}
{% for item in wk_items %}
<tr>
<td>
<a href="{{ item.WkUrl }}">
<img src="{{ item.WkImageUrl }}" />
<p>{{ item.WkCopy }}</p>
</a>
</td>
</tr>
{% endfor %}
レポート
Wunderkind は Braze Currents を使用して Braze からパフォーマンスデータを取り込みます。Braze Currents は未加工のイベントを Google Cloud Storage にストリーミングします。その後 Wunderkind は、これらのイベントを発生元のシグナルと照らし合わせて正規化および集計し、1対1のアトリビューションレポートを作成します。
以下のメトリクスは、まもなく Wunderkind のレポートダッシュボードで利用できるようになります。
| メトリクス | ソース |
|---|---|
| 配信済み送信数 | Braze Currents |
| メール開封数 | Braze Currents |
| クリック数 | Braze Currents |
| コンバージョン数 | Braze Currents (設定時に定義したイベント) |
| 購読解除数 | Braze Currents |
制限事項
- 抑制/オプトアウトの同期はありません。 抑制は Braze でネイティブに管理する必要があります。注:Braze Signals に移行する既存の Wunderkind のお客様については、Wunderkind がお客様のチームと連携して現在の設定を維持します。
- メールチャネルのみ。 現在、この統合では SMS はサポートされていません。
- ユーザープロファイルは、キャンバストリガーの前に存在している必要があります。
user_aliasの受信者を指定した/canvas/trigger/sendは、そのエイリアスをすでに持つ既存の Braze プロファイルのみを解決します。エイリアスでsend_to_existing_onlyを使用することはできず、キャンバストリガーはエイリアスだけでは新しいプロファイルを作成しません。最初にユーザーを作成または更新し、wknd_email_idエイリアスを設定する必要があります (たとえば/users/trackや/users/identifyを使用します)。Wunderkind は、Braze が処理を完了できるように、このアップサートの後、トリガーを実行するまで少し待機する場合があります。 - 識別子としてのメール。 キャンバストリガーが
user_aliasではなくemailで受信者を識別する場合は、Braze の要件に従って、その受信者オブジェクトにprioritizationを含めてください。