コンテキストとイベントプロパティ
このリファレンス記事では、
contextとevent_propertiesに関する情報を取り上げます。それぞれのプロパティを使用するタイミングや動作の違いについて説明します。
カスタムイベントプロパティ全般については、カスタムイベントプロパティをご覧ください。

Canvasのエントリプロパティは、Canvasコンテキスト変数の一部です。つまり、canvas_entry_propertiesはcontextとして参照されます。各context変数には、名前、データタイプ、およびLiquidを含めることができる値が含まれます。現在、canvas_entry_propertiesは下位互換性があります。詳細については、コンテキストとCanvasコンテキストオブジェクトを参照してください。
コンテキストプロパティとイベントプロパティは、Canvasワークフロー内で異なる動作をします。ユーザーのCanvasへのエントリをトリガーするイベントまたはAPI呼び出しのプロパティは context と呼ばれます。ユーザーがCanvasジャーニー内を移動する際に発生するイベントのプロパティは event_properties と呼ばれます。主な違いは、context がイベントだけでなく、APIトリガーCanvasesのエントリペイロードのプロパティにもアクセスできる点です。
コンテキストとイベントプロパティの違いの概要については、以下の表を参照してください。
| コンテキストプロパティ | イベントプロパティ | |
|---|---|---|
| Liquid | context |
event_properties |
| 永続性 | Canvasを使用して構築されたCanvasの期間中、すべてのメッセージステップで参照できます。 | - 一度だけ参照できます。 - 後続のメッセージステップでは参照できません。 |
| Canvasの動作 | Canvasの任意のステップで context を参照できます。起動後の動作については、起動後のCanvasの編集を参照してください。 |
- アクションパスステップの後の最初のメッセージステップで event_properties を参照できます。ここでのアクションはカスタムイベントまたは購入イベントです。- アクションパスステップのその他のユーザーパスの後では参照できません。 - アクションパスとメッセージステップの間に、メッセージ以外のコンポーネントを配置できます。これらのメッセージ以外のコンポーネントの1つがアクションパスステップの場合、ユーザーはそのアクションパスのその他のユーザーパスを通過できます。 |
オリジナルCanvasエディターの詳細
オリジナルエディターを使用してCanvasを作成または複製することはできなくなりました。CanvasコンテキストはオリジナルCanvasエディターではサポートされていないため、このセクションは以前のCanvasワークフローでCanvasエントリプロパティとイベントプロパティを使用する際の参照用として提供されています。
Canvasエントリプロパティ:
- 永続的なエントリプロパティを有効にする必要があります。
- Canvasの最初のフルステップでのみ
canvas_entry_propertiesを参照できます。CanvasはアクションベースまたはAPIトリガーである必要があります。
エントリプロパティ:
- Canvas内でアクションベースの配信を使用する任意のフルステップで
event_propertiesを参照できます。 - アクションベースのCanvasの最初のフルステップ以外のスケジュールされたフルステップでは使用できません。ただし、ユーザーがCanvasコンポーネントを使用している場合、動作は
event_propertiesの現在のCanvasワークフロールールに従います。
イベントプロパティ:
- 先頭のメッセージステップでは
event_propertiesを使用できません。代わりに、canvas_entry_propertiesを使用するか、event_propertiesを含むメッセージステップの前に対応するイベントを持つアクションパスステップを追加する必要があります。
知っておくべきこと
- コンテキストはLiquidでの参照にのみ使用できます。Canvas内のプロパティでフィルタリングするには、代わりにイベントプロパティセグメンテーションを使用してください。
- アプリ内メッセージチャネルでは、Canvasで
contextとevent_propertiesを参照できます。event_propertiesはトリガーベースであるため、最初のCanvasステップに含まれている場合にアクセスできます。 - 先頭のメッセージステップでは
event_propertiesを使用できません。代わりに、contextを使用するか、event_propertiesを含むメッセージステップの前に対応するイベントを持つアクションパスステップを追加できます。 - アクションパスステップに「SMS受信メッセージを送信」または「WhatsApp受信メッセージを送信」トリガーが含まれている場合、後続のCanvasステップにSMSまたはWhatsAppのLiquidプロパティを含めることができます。これはCanvasesでのイベントプロパティの動作と同様です。これにより、メッセージを活用してファーストパーティデータをユーザープロファイルや会話型メッセージングに保存・参照できます。

オーディエンスの適格性は、Canvasエントリ時に一度だけ評価されます。エントリ中にユーザーがマージされた場合、識別されたユーザーはCanvasを続行し、Canvasのセグメント基準に対して再評価されることはありません。

トリガーのタイムスタンプ
アクションベースのCanvasをトリガーするイベントからの日時型のタイムスタンプを使用し、コンテキストを使用して参照する場合、タイムスタンプはUTCに正規化されます。
この動作を考慮して、メッセージが希望するタイムゾーンで送信されることを保証するために、以下の例のようなLiquidタイムゾーンフィルターを使用することを強くお勧めします。
1
{{context.${timestamp_property} | time_zone: "America/Los_Angeles" | date: "%H:%M" }}
ユースケース

context と event_properties の違いをさらに理解するために、ユーザーがカスタムイベント「ウィッシュリストにアイテムを追加」を実行した場合にアクションベースのCanvasに入るシナリオを考えてみましょう。
コンテキストはCanvas作成のエントリスケジュールステップで設定され、ユーザーがCanvasに入るタイミングに対応します。コンテキストは任意のメッセージステップでも参照できます。
このCanvasでは、ユーザーがウィッシュリストにアイテムを追加したかどうかを判定するアクションパスステップからユーザージャーニーが始まります。ここで、ユーザーがアイテムを追加した場合、遅延を経てメッセージステップから「ウィッシュリストに新しいアイテムがあります!」というメッセージを受け取ります。
ユーザージャーニーの最初のメッセージステップは、アクションパスステップからのカスタム event_properties にアクセスできます。この場合、メッセージコンテンツの一部として、このメッセージステップに {{event_properties.${property_name}}} を含めることができます。ユーザーがウィッシュリストにアイテムを追加しなかった場合、その他のユーザーパスを通過するため、event_properties は参照できず、無効な設定エラーが表示されます。
event_properties にアクセスできるのは、メッセージステップがアクションパスステップのその他のユーザー以外のパスに遡れる場合のみです。メッセージステップがその他のユーザーパスに接続されていても、ユーザージャーニー内のアクションパスステップに遡れる場合は、event_properties にアクセスできます。これらの動作の詳細については、メッセージステップを参照してください。