- ライブデータを使用してパーソナライズされた時間的に重要なメッセージを送信する
- システム間でユーザー属性とメッセージデータを同期する
- システム内のユーザーアクションから自動化されたJourneysをトリガーする
- OneSignalのメッセージングインフラストラクチャを活用しながら、内部システムを信頼できる情報源として使用する

統合ガイド
OneSignalは多くの人気プラットフォームと直接統合しています。お使いのプラットフォームがサポートされているかどうかをインテグレーションページで確認してください。サポートされている場合は、そちらのセットアップガイドに従ってください。インテグレーション
CRM、データウェアハウス、分析ツールなどとの利用可能なOneSignalインテグレーションをすべて参照してください。
ステップ1:External IDでユーザーを識別する
OneSignalのexternal_idは、OneSignalとデータベース間の重要なリンクです。OneSignalの各ユーザーのexternal_idを、データベースのユーザーIDと一致するように設定してください。これにより、すでに持っている識別子を使用してユーザーをターゲットにし、データを同期し、メッセージをトリガーできます。
複数のOneSignalアプリ(例:iOS、Android、ウェブ用の別々のアプリ)を使用している場合、すべてのアプリで同じexternal_idを設定することで、プラットフォーム全体で同じユーザーを識別できます。
匿名ユーザーがいる場合、またはシステム間でユーザーを追跡するための安定したユーザーIDがない場合は、OneSignalのonesignal_idまたはsubscription_idを使用できます。ただし、ユーザーが安定して識別可能な場合はexternal_idを設定することをお勧めします。
onesignal_idおよび/またはsubscription_idは、Create user APIレスポンスおよびObserverメソッドを使用したモバイル・ウェブSDK経由で利用できます。
APIのみのセットアップ
OneSignalをメールとSMS/RCSのみに使用している場合(モバイルアプリやウェブサイトなし)、REST APIを通じてユーザーを完全に管理できます:- Create user —
external_id、メールアドレス、電話番号でユーザーを作成 - Update user — ユーザープロパティとサブスクリプションを更新
external_idを設定します:
- お使いのプラットフォーム用のOneSignal SDKをインストールします。
- アプリで認証された後、ユーザーの
external_idでloginを呼び出します。 - SDKが自動的にプッシュトークンをキャプチャし、ユーザーにリンクします。
ステップ2:ユーザーデータとイベントを同期する
ユーザー識別情報を設定したら、システムからOneSignalに2種類のデータを同期できます: タグ — 永続的なユーザープロパティ タグは、セグメンテーションとメッセージのパーソナライゼーションのためにOneSignalにユーザー属性を保存します。プランタイプ、優先言語、登録日など、ユーザーが誰であるかを説明するデータに使用します。- Update user APIまたはフロントエンドSDKを通じてタグを設定します
- タグは更新または削除するまでユーザーに保持されます
- タグを使用してセグメントを構築し、メッセージコンテンツをパーソナライズします
completed_purchase、viewed_page、subscription_expiredなどのユーザーが実行するアクションを表します。自動化されたJourneysをトリガーするために使用します。
- APIまたはフロントエンドSDK経由でカスタムイベントを送信します
- カスタムイベントはタグのように保持されませんが、Journeysとメッセージのパーソナライゼーションのトリガーとして使用できます
ステップ3:メッセージとエンゲージメントデータをエクスポートする
配信とエンゲージメントデータをシステムに同期するには:- Event Streams — (推奨)メッセージイベント(送信、配信、クリックなど)のリアルタイムWebhook配信。イベントが発生するたびにデータベースを同期するのに最適です。
- サブスクリプションCSVのエクスポート — 定期的な同期や移行のためのサブスクリプションデータの一括エクスポート。
- メッセージ表示API — プログラムでメッセージ履歴と配信統計をクエリします。
アーキテクチャの推奨事項
- データベースを信頼できる情報源として維持してください。 OneSignalをメッセージング層として扱います。ユーザーデータとイベントをOneSignalにプッシュし、配信/エンゲージメントデータを取得します。
- リアルタイム更新にはAPIを使用してください。 ユーザーがアクションを実行した場合(例:購入を完了した場合)、すぐにOneSignal APIを呼び出してタグを更新するかカスタムイベントを送信してください。
- 一括操作にはCSVインポートを使用してください。 初期オンボーディングや大規模な移行には、何千もの個別のAPI呼び出しを行うのではなく、CSVインポートを使用してください。
- レート制限を遵守してください。 高ボリュームの更新の場合、可能な限りリクエストをバッチ処理し、指数バックオフを使用した再試行ロジックを実装してください。
- 戻りパスにEvent Streamsを使用してください。 配信データのためにOneSignal APIをポーリングするのではなく、Event Streamsを設定してメッセージイベントのリアルタイムWebhookを受信してください。
データベースからのメッセージのトリガー
2つのアプローチを使用してメッセージをトリガーできます。ユースケースに基づいて1つまたは両方を選択します。- API
- タグとJourneys
- カスタムイベントとJourneys
即時のトランザクションメッセージングには、Create message APIを使用します。次を介してユーザーをターゲットにします:
external_id- エイリアス(例:
crm_id) - メールまたは電話番号
- トランザクションメッセージ(例:領収書、アラート)
- 時間的に重要またはパーソナライズされた通知
- 個人またはグループのターゲティング(呼び出しごとに最大20,000ユーザー)
send_afterパラメータを使用してメッセージをスケジュールすることもできます。よくある質問
データベースからメッセージを送信するにはAPIとJourneysのどちらを使うべきですか?
領収書やアラートなどの即時のトランザクションメッセージにはCreate message APIを使用してください。ビジュアルなワークフロー構築の恩恵を受ける自動化されたライフサイクルメッセージやマーケティングメッセージには、タグまたはカスタムイベントを使用したJourneysを使用してください。OneSignalと自分のシステムにはどのようなデータを保存すべきですか?
データの目的に基づいて決定します: OneSignalに保存するもの- メッセージングに直接使用されるデータを保存します:
OneSignalはメッセージのパーソナライゼーションで詳述されているいくつかのメッセージパーソナライズ方法をサポートしています。
- メッセージングに関連しないデータ(例:完全なユーザープロファイル、トランザクションログ)は、パフォーマンス、プライバシー、および制御のために自分のシステムに保持します。長期分析またはコンプライアンスのためにOneSignalからメッセージ履歴をアーカイブします。
External IDを持たないユーザーにメッセージを送信できますか?
はい、ただし追加の処理が必要です。OneSignalのonesignal_idまたはsubscription_idを使用できますが、これらはexternal_idにリンクされるまで匿名です。システム間の識別を簡素化するために、すべてのユーザーにexternal_idを設定することをお勧めします。
タグとカスタムイベントの違いは何ですか?
タグは、セグメンテーションとパーソナライゼーションに使用される永続的なユーザープロパティ(例:プランタイプ、言語設定)です。カスタムイベントは、Journeysをトリガーするために使用される一回限りのユーザーアクション(例:completed_purchase)を表します。タグはユーザーが誰であるかを説明し、カスタムイベントはユーザーが何をしたかを説明します。
ユーザー
OneSignalのユーザーモデルとアイデンティティの構造を理解します。
カスタムイベント
システムからイベントを送信して、Journeysをトリガーしユーザー行動を追跡します。
メッセージのパーソナライゼーション
タグ、カスタムデータ、動的コンテンツでメッセージをパーソナライズします。
Journeys
ユーザー行動とデータによってトリガーされる自動メッセージングワークフローを構築します。