メインコンテンツへスキップ

概要

OneSignal + Google Sheetsインテグレーションにより、Google SheetsからOneSignalへのカスタムイベントの自動同期が可能になります。これにより、スプレッドシートに保存されているユーザー行動データに基づいて、自動化されたJourneysとパーソナライズされたメッセージングキャンペーンをトリガーできます。イベントデータを共同で管理するチームに最適です。

要件

  • アウトバウンドメッセージイベント用のEvent Streamsへのアクセス(プランの制限と超過料金が適用されます)
  • インバウンドイベント同期用のCustom Eventsへのアクセス(プランの制限と超過料金が適用されます)
  • 更新されたアカウントプラン(無料アプリでは利用できません)

Google Sheets

  • イベントデータを含むシートへのアクセス権を持つGoogleアカウント
  • イベントデータの適切な列構造を持つイベントスプレッドシート
  • OneSignalがデータにアクセスするためのシート共有権限
  • イベント追跡シートの一貫したデータ形式

セットアップ

1

イベントデータシートを準備する

イベントデータに必要な列を使用してGoogle Sheetを構造化します:必須列:
  • event_nameまたはevent_type:イベントの名前(String)
  • user_idまたはemail:ユーザー識別子(String)
  • timestampまたはcreated_at:イベントのタイムスタンプ(Date/DateTime)
  • properties:JSONまたは個別の列としてのイベントプロパティ(オプション)
シート構造の例:
| event_name | user_id | timestamp           | product_id | amount |
|------------|---------|---------------------|------------|--------|
| purchase   | user123 | 2024-01-15 10:30:00 | prod_abc   | 29.99  |
| signup     | user456 | 2024-01-15 11:45:00 |            |        |
2

シート権限を構成する

OneSignalのサービスアカウントとGoogle Sheetを共有します:
  1. Google Sheetを開きます
  2. 右上の共有ボタンをクリックします
  3. OneSignalのサービスアカウントメールを追加します(セットアップ中に提供されます)
  4. 権限を閲覧者(読み取り専用アクセス)に設定します
  5. 送信をクリックしてアクセスを許可します
OneSignalは、インテグレーションセットアッププロセス中に特定のサービスアカウントメールを提供します。
3

OneSignalでインテグレーションを追加する

OneSignalで、Data > Integrationsに移動し、Add Integrationをクリックします。Google Sheetsを選択して、次を提供します:
  • Sheet URL:Google Sheetの完全なURL
  • Sheet Name:イベントデータを含む特定のタブ/シート名
  • Header Row:列ヘッダーを含む行番号(通常は1)
  • Data Range:イベントデータを含むセル範囲(例:A2:F1000
4

列マッピングを構成する

Google Sheetsの列をOneSignalイベントフィールドにマッピングします:
  • Event Name Column:イベント名を含む列を選択します
  • User ID Column:ユーザー識別子を含む列を選択します
  • Timestamp Column:イベントタイムスタンプを含む列を選択します
  • Properties Columns:イベントプロパティとして含める追加の列を選択します
複数の列をイベントプロパティとしてマッピングできます。OneSignalはそれらを単一のイベントペイロードに結合します。
5

同期スケジュールを設定する

OneSignalが新しいイベントデータをチェックする頻度を構成します:
  • Sync Frequency:15分、1時間、または1日から選択します
  • Incremental Sync:最後の更新以降の新しい行のみを同期するために有効にします
  • Timestamp Filter:特定の時間範囲内のイベントのみを同期します
Google SheetsにはAPI速度制限があります。大規模なデータセットを含むシートでは、より頻繁な同期がスロットルされる可能性があります。
6

接続をテストする

Test Connectionをクリックして、OneSignalがGoogle Sheetにアクセスし、イベントデータを正しく読み取れることを確認します。

イベントデータマッピング

をOneSignalのカスタムイベント形式にマッピングします:
OneSignalフィールド説明必須
nameevent_nameイベント識別子はい
external_iduser_idユーザー識別子はい
timestampevent_timestampイベントが発生した時刻いいえ
propertiesevent_dataいいえ

高度な構成

増分同期のセットアップ

新しいイベントのみを処理するように増分同期を構成します:
  1. Timestamp Column:シートに一貫したタイムスタンプ列があることを確認します
  2. Sort Order:イベントをタイムスタンプでソートしたままにします(最新が最後)
  3. Append-Only:新しいイベントをシートの下部に追加します
  4. Avoid Edits:同期後に履歴イベント行を変更しないでください

データ検証

Google Sheetでデータ検証を実装します:
データ > データの検証
- Event Name:範囲からのリスト(事前定義されたイベントタイプ)
- User ID:形式をチェックするカスタム数式
- Timestamp:日付/時刻形式の検証
- Amount:数値プロパティの数値検証

共同ワークフロー

チームコラボレーションのベストプラクティス:
  • Named Ranges:イベントデータセクションに名前付き範囲を使用します
  • Protected Ranges:誤った変更からヘッダー行を保護します
  • Comments:イベント定義を説明するコメントを追加します
  • Version History:変更を追跡するためにGoogle Sheetsのバージョン履歴を使用します
  • Access Controls:データ入力チームメンバーへの編集アクセスを制限します

パフォーマンスの最適化

大規模なデータセットを最適化します:
  • Sheet Limits:最高のパフォーマンスのために、個々のシートを10,000行未満に保ちます
  • Multiple Sheets:異なるイベントタイプに個別のシートを使用します
  • Data Archival:古いデータを毎月個別のシートにアーカイブします
  • Formulas:イベントデータ範囲の複雑な数式を最小限に抑えます
Google Sheetsは、合計50,000セル未満で最高のパフォーマンスを発揮します。大量のイベント追跡には、代わりにデータベースソースの使用を検討してください。

よくある質問

OneSignalはGoogle Sheetsからイベントをどのくらいの頻度で同期しますか?

OneSignalは15分ごとに同期できますが、Googleの API制限を尊重するために、ほとんどのユースケースでは1時間または1日ごとの同期をお勧めします。

複数のチームメンバーが同じシートにイベントを追加できますか?

はい、Google Sheetsはリアルタイムコラボレーションをサポートしています。ただし、チームメンバーが必要なデータ形式と列構造を理解していることを確認してください。

誰かが履歴イベントデータを編集するとどうなりますか?

OneSignalは、タイムスタンプと行位置に基づいて同期します。履歴データを編集すると、重複イベントやデータの不整合が発生する可能性があります。追加のみのワークフローをお勧めします。