# Airship Import Integration

Airshipは、カスタマーエンゲージメント、ライフサイクルマーケティング、分析、データソリューションのためのプラットフォームです。通知やメッセージングソリューション、ターゲティング、キャンペーン管理ツールを提供することで、マーケターが顧客をアクティベートし、エンゲージするのを支援します。このインテグレーションにより、顧客情報のオプトインデバイス、静的リスト、レポートを取り込むことができます。

## 前提条件

- Treasure Dataの基本的な知識
- Airshipプラットフォームの基本的な知識


## Treasure Data Integration の静的 IP アドレス

セキュリティポリシーで IP ホワイトリストが必要な場合は、接続を成功させるために Treasure Data の IP アドレスを許可リストに追加する必要があります。

リージョンごとに整理された静的 IP アドレスの完全なリストは、次のリンクにあります:
[IP Addresses for Integrations](/apis/endpoints/ip-addresses-integrations-result-workers)

## 制限事項

Airshipアプリケーションには、データオブジェクト「Static Lists」がBearer Token認証方式では動作しないという制限があります。これは、Airship APIドキュメントではサポートされていると記載されているにもかかわらずです。このリンクを参照してください: [https://docs.airship.com/reference/security/api-security/](https://docs.airship.com/reference/security/api-security/)。

- 一部のインテグレーションでは、インクリメンタルローディングを選択する場合、フルテーブルスキャンを回避するために列にインデックスがあることを確認する必要があります。
- incremental_columnsとしてサポートされているのは、Timestamp、Datetime、および数値列のみです。
- 複雑なクエリに対してPrimary keysを検出できないため、raw queryではincremental_columnsが必要です。


## リスト名の取得

1. Airship内のプロジェクトに移動します。
2. Audienceの下で、Listを選択します: ![](/assets/image2020-12-14_19-27-42.d48e90d6eda950be50b3b446154f67842b3c615ff349fed3ac8a4fb0b9a74ccc.c7507d0f.png)
3. Treasure Dataにインポートしたいリスト名をメモします。
![](/assets/image2020-12-14_19-28-54.a9aab9ef16ec826f33053682212163c611e46dd175a0fc9efc7519a4e11ab971.c7507d0f.png)


## Treasure コンソールを使用して接続を作成

## 新しいAuthenticationを作成

Treasure Dataでは、クエリを実行する前にデータ接続を作成して設定する必要があります。データ接続の一部として、インテグレーションにアクセスするための認証を提供します。

1. **Treasure コンソール**を開きます。
2. **Integrations Hub** >  **Catalog**に移動します。
3. Airshipを検索し、**Create Authentication**をクリックします。
![](/assets/airship.c54cea610f705e1019f4414c31acda543ac6a3560d0191d4ec1189cfbe4e2612.c7507d0f.png)
4. 次のダイアログが開きます。![](/assets/image2020-12-9_14-48-36.41f3a135e9338d4635059b3943e1fdc41be5682c02bb721440227e3106174b33.c7507d0f.png)
5. Base URLを入力します:


- **Airshipの北米クラウドサイト**。[https://go.urbanairship.com](https://go.urbanairship.com/)
- **Airshipのヨーロッパクラウドサイト**。[https://go.airship.eu](https://go.airship.eu/)


1. 次のいずれかの認証方法を選択します:


Basic Authentication
* Airship プロジェクトダッシュボードで、**Settings** > **APIs & Integrations** を選択します。
* App key、App secret、および App master secret を入力します。


![](/assets/image-20201001-105225.8c36beeab1beaa336666eeb2b7e31823e05fb2749a86343da7bb5d31070a7609.429f9851.png)

Access Token
* Airship プロジェクトダッシュボードで、**Settings** > **APIs & Integrations** > **Tokens** を選択します。
* 新しいトークンを作成し、**Audience Modification** または **All-access Role** を付与します。
![](/assets/image-20201001-110148.02affccc2dabc28ee51534b28b5607998e557003533835501ef7c7fd4b7cab7a.429f9851.png)


1. 接続の名前を入力します。
2. **Continue**を選択します。


## AirshipアカウントデータをTreasure Dataに転送

認証済み接続を作成すると、自動的にAuthenticationsに移動します。作成した接続を検索します。

1. **New Source**を選択します。
2. Data Transferフィールドに**Source**の名前を入力します**。
![](/assets/image2020-12-9_15-40-22.74201d979c95be9640411c51ce549d18c920a98b38aacbcbbb38e10cd4655f70.c7507d0f.png)
3. **Next**を選択します。**Source Tableダイアログが開きます。**
![](/assets/image2020-12-9_15-40-58.70e94fb6c62d177119ecc1ff85862eb31c3474c9d60158d50100df78e789d350.c7507d0f.png)
4. 次のパラメータを編集します:


| **パラメータ** | **説明** |
|  --- | --- |
| **Data Source** | インポートするデータタイプ:  - Reports - Named Users - Static Lists |
| **Data Objects** | インポートするレポートタイプ、データタイプがReportsの場合に表示:  - Custom Event Report - Opt-in Report - Opt-out Report - Time In App Report - Web Response Report - Response List - Device Report - Experiment Overview Report |
| **Start Time** (Reports Data Sourceを選択した場合に必須) | UI設定では、サポートされているブラウザから日付と時刻を選択するか、ブラウザが期待する日付時刻形式に合った日付を入力できます。たとえば、Chromeでは年、月、日、時、分を選択するカレンダーが表示され、Safariでは2020-10-25T00:00のようなテキストを入力する必要があります。  CLI設定では、RFC3339 UTC "Zulu"形式のタイムスタンプが必要で、ナノ秒まで正確である必要があります。例: "2014-10-02T15:01:23Z"。 |
| **End Time** (Reports Data Sourceを選択した場合に必須) | UI設定では、サポートされているブラウザから日付と時刻を選択するか、ブラウザが期待する日付時刻形式に合った日付を入力できます。たとえば、Chromeでは年、月、日、時、分を選択するカレンダーが表示され、Safariでは2020-10-25T00:00のようなテキストを入力する必要があります。  CLI設定では、RFC3339 UTC "Zulu"形式のタイムスタンプが必要で、ナノ秒まで正確である必要があります。例: "2014-10-02T15:01:23Z"。 |
| **Precision** | 返される結果の粒度  - Daily - Hourly - Monthly |
| **Incremental Loading** | 最後の実行以降の新しいデータのみをインポート。About Incremental Loadingを参照してください。 |
| **Until**  (Device Report Data Sourceを選択した場合に必須) | この日付までのデータのみをインポート |
| **Push ID** (Experiment Overview Report Data Sourceを選択した場合に必須) | 形式: UUID 実験に関する統計とメタデータを返します |
| Named User ID (Named Users Data Sourceの場合に表示) | 空白のままにすると、すべてのnamed usersの完全なリストを取得します |
| **List Name** (Static Lists Data Sourceを選択した場合に必須) | 静的リストのコンテンツをダウンロード |


### Data Settings

1. **Next**を選択します。Data Settingsページが開きます。
2. このダイアログのページをスキップします。


### Data Preview

インポートを実行する前に、Generate Preview を選択してデータの[プレビュー](/products/customer-data-platform/integration-hub/batch/import/previewing-your-source-data)を表示できます。Data preview はオプションであり、選択した場合はダイアログの次のページに安全にスキップできます。

1. **Next** を選択します。Data Preview ページが開きます。
2. データをプレビューする場合は、**Generate Preview** を選択します。
3. データを確認します。


### Data Placement

データの配置について、データを配置したいターゲット database と table を選択し、インポートを実行する頻度を指定します。

1. **Next** を選択します。Storage の下で、インポートされたデータを配置する新しい database を作成するか、既存の database を選択し、新しい table を作成するか、既存の table を選択します。
2. **Database** を選択 > **Select an existing** または **Create New Database** を選択します。
3. オプションで、database 名を入力します。
4. **Table** を選択 > **Select an existing** または **Create New Table** を選択します。
5. オプションで、table 名を入力します。
6. データをインポートする方法を選択します。
  - **Append** (デフォルト) - データインポートの結果は table に追加されます。
table が存在しない場合は作成されます。
  - **Always Replace** - 既存の table の全体の内容をクエリの結果出力で置き換えます。table が存在しない場合は、新しい table が作成されます。
  - **Replace on New Data** - 新しいデータがある場合のみ、既存の table の全体の内容をクエリの結果出力で置き換えます。
7. **Timestamp-based Partition Key** 列を選択します。
デフォルトキーとは異なるパーティションキーシードを設定したい場合は、long または timestamp 列をパーティショニング時刻として指定できます。デフォルトの時刻列として、add_time フィルターで upload_time を使用します。
8. データストレージの **Timezone** を選択します。
9. **Schedule** の下で、このクエリを実行するタイミングと頻度を選択できます。


#### 一度だけ実行

1. **Off** を選択します。
2. **Scheduling Timezone** を選択します。
3. **Create & Run Now** を選択します。


#### 定期的に繰り返す

1. **On** を選択します。
2. **Schedule** を選択します。UI では、*@hourly*、*@daily*、*@monthly*、またはカスタム *cron* の 4 つのオプションが提供されます。
3. **Delay Transfer** を選択して、実行時間の遅延を追加することもできます。
4. **Scheduling Timezone** を選択します。
5. **Create & Run Now** を選択します。


転送が実行された後、**Data Workbench** > **Databases** で転送の結果を確認できます。