> ## Documentation Index
> Fetch the complete documentation index at: https://moengage.com/docs/llms.txt
> Use this file to discover all available pages before exploring further.

# Google Cloud Storage

> MoEngage のキャンペーンインタラクションイベントを Google Cloud Storage バケットにエクスポートし、BigQuery への取り込みと分析に活用します。

## はじめに

[Google Cloud Storage](https://cloud.google.com/storage) は、大規模な非構造化データセットを格納できるエンタープライズ向けパブリッククラウドストレージプラットフォームです。

## MoEngage × GCS

MoEngage と GCS の統合により、キャンペーンのインタラクションイベントが Google Cloud Storage バケットにエクスポートされます。その後、これらのファイルを BigQuery にインポートして、さらなる処理と分析を行うことができます。

## 統合

<Info>
  **前提条件**

  * 新しいバケットとサービスアカウントを作成する権限を持つ Google Cloud Platform アカウントがあることを確認してください。
  * GCS へのエクスポートは Streams アドオンの一部です。アカウントで有効にするには、MoEngage の専任 CSM（カスタマーサクセスマネージャー）にお問い合わせください。
</Info>

### ステップ 1: MoEngage 専用のサービスアカウントを作成する

Google Cloud Platform コンソールで、**IAM & Admin** コンソールに移動します。

1. サイドバーから **Service Accounts** を開きます。
   <img src="https://mintcdn.com/moengage/V7W8fvZbxtTmKTAn/images/partner_12062501879700.png?fit=max&auto=format&n=V7W8fvZbxtTmKTAn&q=85&s=f0777b23345336661523bb9f9380602b" alt="IAM & Admin コンソールの Service Accounts ホーム" width="1424" height="704" data-path="images/partner_12062501879700.png" />
2. **+ Create Service Account** ボタンをクリックします。
3. このサービスアカウントに名前と、必要に応じて説明を付けます。
4. **Create and continue** をクリックします。
   <img src="https://mintcdn.com/moengage/V7W8fvZbxtTmKTAn/images/partner_12062703174548.png?fit=max&auto=format&n=V7W8fvZbxtTmKTAn&q=85&s=bd7b29e34e3d75bc8a9e0d9763917281" alt="Google Cloud での新しいサービスアカウントの作成" width="1200" height="1226" data-path="images/partner_12062703174548.png" />
5. このサービスアカウントにロール **Basic > Browser** を追加します。
   <img src="https://mintcdn.com/moengage/V7W8fvZbxtTmKTAn/images/partner_12062802345876.png?fit=max&auto=format&n=V7W8fvZbxtTmKTAn&q=85&s=c64ebc283fcb517740cf3ca63d5f3175" alt="サービスアカウントへの Basic > Browser ロールの割り当て" data-og-width="1424" width="1424" data-og-height="1402" height="1402" data-path="images/partner_12062802345876.png" data-optimize="true" data-opv="3" srcset="https://mintcdn.com/moengage/V7W8fvZbxtTmKTAn/images/partner_12062802345876.png?w=280&fit=max&auto=format&n=V7W8fvZbxtTmKTAn&q=85&s=37ec8ed16fc1f02fdaa3ee0688c7c9de 280w, https://mintcdn.com/moengage/V7W8fvZbxtTmKTAn/images/partner_12062802345876.png?w=560&fit=max&auto=format&n=V7W8fvZbxtTmKTAn&q=85&s=d1c61225f193162684d7589364456abd 560w, https://mintcdn.com/moengage/V7W8fvZbxtTmKTAn/images/partner_12062802345876.png?w=840&fit=max&auto=format&n=V7W8fvZbxtTmKTAn&q=85&s=985c6ee6482b3f37cfc6b7d0c94111d1 840w, https://mintcdn.com/moengage/V7W8fvZbxtTmKTAn/images/partner_12062802345876.png?w=1100&fit=max&auto=format&n=V7W8fvZbxtTmKTAn&q=85&s=fdebd3318aa08e4316eaa5b8f7aeb882 1100w, https://mintcdn.com/moengage/V7W8fvZbxtTmKTAn/images/partner_12062802345876.png?w=1650&fit=max&auto=format&n=V7W8fvZbxtTmKTAn&q=85&s=0669bdfcba41da180e5b0cb5fe2f64b6 1650w, https://mintcdn.com/moengage/V7W8fvZbxtTmKTAn/images/partner_12062802345876.png?w=2500&fit=max&auto=format&n=V7W8fvZbxtTmKTAn&q=85&s=20304b9f25bd78c5662c148e2a9ca65a 2500w" />
6. **Continue** をクリックします。必要に応じて、このサービスアカウントへのアクセス権をユーザーに付与します。
7. **Done** をクリックします。
8. サービスアカウントの一覧から、作成したサービスアカウントを開きます。
9. **Keys** タブに移動し、**Add Key** をクリックして、**Create new key** を選択します。
   <img src="https://mintcdn.com/moengage/V7W8fvZbxtTmKTAn/images/partner_12062893736724.png?fit=max&auto=format&n=V7W8fvZbxtTmKTAn&q=85&s=f20d62d9137d0b4af2a8fa8aa9dbf24d" alt="サービスアカウントの Keys タブにある Add Key オプション" width="1424" height="860" data-path="images/partner_12062893736724.png" />
10. **Key Type** として **JSON** を選択し、**Create** をクリックします。
    <img src="https://mintcdn.com/moengage/V7W8fvZbxtTmKTAn/images/partner_12062926508052.png?fit=max&auto=format&n=V7W8fvZbxtTmKTAn&q=85&s=884c101ac5d4a9e510d2cba36d40e8bb" alt="サービスアカウントキー作成時にキータイプとして JSON を選択" width="1140" height="794" data-path="images/partner_12062926508052.png" />
11. 新しいキーが JSON 形式で自動的にダウンロードされます。このファイルは安全に保管してください。後で MoEngage ダッシュボードにアップロードする必要があります。

### ステップ 2: このサービスアカウントにバケットへの権限を付与する

1. サービスアカウントの詳細ページで、サービスアカウントのメールアドレスをコピーします。
   <img src="https://mintcdn.com/moengage/V7W8fvZbxtTmKTAn/images/partner_12063141549076.png?fit=max&auto=format&n=V7W8fvZbxtTmKTAn&q=85&s=7dcc69c6c6c29e1820cdfbb1cfcb4f7d" alt="詳細ページのサービスアカウントのメールアドレス" width="1668" height="1200" data-path="images/partner_12063141549076.png" />
2. **Cloud Storage** コンソールに移動し、MoEngage にイベントをエクスポートさせたいバケットを開きます。
3. **Permissions** タブで **Grant Access** をクリックします。
   <img src="https://mintcdn.com/moengage/V7W8fvZbxtTmKTAn/images/partner_12063166880276.png?fit=max&auto=format&n=V7W8fvZbxtTmKTAn&q=85&s=20729d2980e97b60fe4a270bcee4ccc6" alt="バケットの Permissions タブにある Grant Access オプション" width="1786" height="1266" data-path="images/partner_12063166880276.png" />
4. **New Principals** フィールドにサービスアカウントのメールアドレスを貼り付けて選択します。
5. ロール **Cloud Storage > Storage Admin** を割り当てます。
   <img src="https://mintcdn.com/moengage/V7W8fvZbxtTmKTAn/images/partner_12063216822036.png?fit=max&auto=format&n=V7W8fvZbxtTmKTAn&q=85&s=2b6e86396b652e060a8da45715833bac" alt="サービスアカウントへの Storage Admin ロールの割り当て" width="1978" height="1352" data-path="images/partner_12063216822036.png" />
6. **Save** をクリックします。

### ステップ 3: GCP アカウントで API とサービスを有効にする

1. GCP コンソールで **APIs & Services** に移動し、**+ Enable APIs and Services** をクリックします。
   <img src="https://mintcdn.com/moengage/V7W8fvZbxtTmKTAn/images/partner_12063295895828.png?fit=max&auto=format&n=V7W8fvZbxtTmKTAn&q=85&s=10d6e9fc7cfa32b23ba4e0c9775f1286" alt="GCP コンソールの Enable APIs and Services オプション" width="1480" height="622" data-path="images/partner_12063295895828.png" />
2. **Cloud Storage** を検索し、API の詳細ページを開きます。
3. **Enable** をクリックして有効にします。
   <img src="https://mintcdn.com/moengage/V7W8fvZbxtTmKTAn/images/partner_12063394282388.png?fit=max&auto=format&n=V7W8fvZbxtTmKTAn&q=85&s=d492a87c6221b4fdb161f19109063546" alt="GCP での Cloud Storage API の有効化" width="1480" height="876" data-path="images/partner_12063394282388.png" />

### ステップ 4: App Marketplace で GCS 統合を設定する

1. MoEngage ダッシュボードで **App Marketplace** に移動します。
2. **Google Cloud Storage** を検索します。
3. **Integrate** タブに移動し、**+ Add Integration** をクリックします。
   <img src="https://mintcdn.com/moengage/V7W8fvZbxtTmKTAn/images/partner_12063471722644.png?fit=max&auto=format&n=V7W8fvZbxtTmKTAn&q=85&s=3bdb837e140ffd31b34d973ea0200f30" alt="Google Cloud Storage の Integrate タブにある Add Integration オプション" width="1716" height="658" data-path="images/partner_12063471722644.png" />
4. 接続に識別しやすい名前を付けます。
5. バケット名を入力します。
6. 必要に応じて、バケットのリージョンを選択します。リージョンは Bucket Details ページで確認できます。
7. 先ほどダウンロードしたサービスアカウントの認証情報 JSON ファイルをアップロードします。アップロード時に Client ID と Client Email を確認できます。
8. エクスポートするイベントを選択します。デフォルトでは、各イベントは標準属性とともにエクスポートされます。
   <img src="https://mintcdn.com/moengage/V7W8fvZbxtTmKTAn/images/partner_12064408178068.png?fit=max&auto=format&n=V7W8fvZbxtTmKTAn&q=85&s=5baeb931d4fe49872638dc39e6560e71" alt="MoEngage App Marketplace での GCS 統合の設定" width="1280" height="1482" data-path="images/partner_12064408178068.png" />
9. 必要に応じて、接続をテストできます。MoEngage は入力された詳細が正しいかどうかの検証を試みます。問題がある場合はエラーが表示されるので、修正できます。

### 必要な権限に関する注意

エンドツーエンドのテストを実行するには、MoEngage でいくつかの追加の権限を設定する必要があります。IT ポリシーでこれらの権限が許可されていない場合は、スキップできます。ただし、その場合は App Marketplace から接続をテストできません。これらの任意の権限をスキップしても、実際のデータエクスポートには一切影響しません。

| 権限 | 必須 | 説明 |
| - | - | - |
| `resourcemanagement.projects.get` | いいえ | Google Cloud Resource Manager でプロジェクトのメタデータを表示することをユーザーに許可します。MoEngage はテスト中にサービスアカウントにアクセスするためにこの権限を使用します。 |
| `resourcemanagement.projects.getIampolicy` | いいえ | Google Cloud Resource Manager でプロジェクトの IAM ポリシーを表示することをユーザーに許可します。MoEngage はバケットに適切なポリシーが割り当てられているかどうかを確認するためにこの権限を使用します。 |
| `storage.bucket.get` | いいえ | Google Cloud Storage バケットのメタデータを表示することをユーザーに許可します。MoEngage は設定時に指定されたバケットが実際に存在するかどうかを確認するためにこの権限を使用します。 |
| `storage.object.create` | はい | Google Cloud Storage バケット内にオブジェクト（ファイル）を作成することをユーザーに許可します。MoEngage がバケット内にファイルを作成するには、この権限が必要です。 |
| `storage.object.get` | はい | Google Cloud Storage バケット内のオブジェクト（ファイル）の内容を読み取ることをユーザーに許可します。MoEngage がバケット内にファイルが正しく作成されたかどうかを確認するには、この権限が必要です。 |
| `storage.object.update` | はい | Google Cloud Storage バケット内のオブジェクト（ファイル）の内容を変更することをユーザーに許可します。不一致があった場合に MoEngage がファイルを更新するには、この権限が必要です。 |

MoEngage が必要とする必須の権限と、IT ポリシーで承認されたテスト用の任意の権限を組み合わせたカスタムロールを自由に作成してください。

## データを正しく受信しているかどうかを確認する

MoEngage は次のパス構造を使用してファイルをアップロードします。

```text wrap theme={null}
gs://<your-bucket-name>/event-exports/<your_app_name>/<connection_id>/export_day=YYYY-MM-DD/export_hour=HH/<file-name>.json.gz
```

バケットに移動し、ファイルが存在することを確認します。

<img src="https://mintcdn.com/moengage/V7W8fvZbxtTmKTAn/images/partner_12064664073364.png?fit=max&auto=format&n=V7W8fvZbxtTmKTAn&q=85&s=367113b340fa6cbfcaa5f2fac9a13b91" alt="エクスポートされたファイルが GCS バケットに存在することの確認" width="2336" height="972" data-path="images/partner_12064664073364.png" />

## エクスポート頻度

MoEngage は 1 時間ごとにデータをダンプします。

## サンプルファイル

エクスポートされるファイルは `.json.gz` 形式です。[サンプルファイルをダウンロード](https://app-cdn.moengage.com/partners-integration-ui/app-marketplace-public/helpdoc/event_exports_sample_files.json.gz)して構造を確認してください。実際の内容は、エクスポートを選択したイベントと属性によって異なります。

```json JSON theme={null}
{
  "app_name": "App Name",
  "export_hour": "6",
  "db_name": "MoEngage App Name",
  "event": {
    "uid": "user id",
    "event_type": "CAMPAIGN_EVENT",
    "event_code": "MOE_EMAIL_SENT",
    "event_name": "Email Sent",
    "user_attributes": {
      "moengage_user_id": "userid1",
      "user_attr1": "value1",
      "user_attr2": "value2"
    },
    "event_source": "MOENGAGE",
    "email_id": "test@xyz.com",
    "event_attributes": {
      "campaign_name": "Campaign name",
      "moe_campaign_tags": [
        "Tag1",
        "Tag2"
      ],
      "campaign_type": "GENERAL",
      "moe_campaign_channel": "Email",
      "moe_delivery_type": "One Time",
      "campaign_id": "moengage campaign id",
      "campaign_channel": "EMAIL"
    },
    "event_uuid": "3b918064-08dc-47ae-b674-c23797475a8d",
    "event_time": 1653022310,
    "device_attributes": {
      "moengage_device_id": "device id if applicable"
    }
  },
  "export_day": "2022-05-20"
}
```

サポートされているイベントと属性の一覧については、[データエクスポート用語集](https://www.moengage.com/docs/user-guide/data/exports/events/data-export-glossary)を参照してください。

## よくある質問

<AccordionGroup>
  <Accordion title="データの受信はいつから始まりますか？">
    通常、アカウントで自動データエクスポートが設定され、データが表示され始めるまでに最大 30 分かかります。
  </Accordion>

  <Accordion title="後から追加のイベントをエクスポートできますか？">
    はい。後から新しいイベントをエクスポートする必要がある場合は、App Marketplace で設定を編集し、新しいイベントをエクスポートに追加できます。
  </Accordion>

  <Accordion title="自動データエクスポートを使用して過去のデータをエクスポートできますか？">
    自動データエクスポートを使用して過去のデータをエクスポートすることはできません。設定が完了すると、エクスポートを有効にした時点以降の各イベントのデータが表示され始めます。
  </Accordion>

  <Accordion title="自動データエクスポートには料金がかかりますか？">
    お使いの課金プランにまだ含まれておらず、後から有効にする必要がある場合は、カスタマーサクセスマネージャーと協力して課金プランに追加する必要があります。MoEngage が毎月データウェアハウス、パートナー、または API の宛先に送信するデータ量によっては、追加料金が発生する場合があります。
  </Accordion>

  <Accordion title="データエクスポートでは最新のユーザー属性が保証されますか？">
    いいえ。データエクスポートは主にイベントをほぼリアルタイムでエクスポートするために構築されており、MoEngage のユーザー属性は非同期で更新されるため、現時点ではエクスポートにユーザー属性の最新の値が含まれることを保証できません。
  </Accordion>
</AccordionGroup>


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.