Iterable は、完全なクロスチャネルカスタマーエンゲージメントプラットフォームです。メール、SMS、埋め込みメッセージ、アプリ内メッセージ、プッシュ通知、Web プッシュ通知を通じて顧客にメッセージを送信し、顧客基盤を拡大し、エンゲージメントを高め、ユーザーライフタイムバリューを向上させることができます。
このインテグレーションにより、Treasure AI ユーザーは Iterable リストの購読者を追加、削除、または truncate できます。
- Treasure AI の基本知識
- Iterable の基本知識
Iterable インポートインテグレーションを参照してください
Iterable 用に作成された Authentication は、入力コネクタと出力コネクタ間で再利用できます。Integration Hub > Authentications から既存の Authentication を検索してください。
API キーを使用して Iterable への新しい接続を作成する方法については、Iterable インポートインテグレーションを参照してください。
SELECT email, user_id FROM table my_table以下の表は、クエリ結果に含めることができるカラムと、それらが Iterable にどのように送信されるかを説明しています。
| 名前 | 型 | 説明 |
|---|---|---|
| String | ||
| user_id | String | userId に変換されます |
| prefer_user_id | Boolean | email よりも user_id を優先します |
| merge_nested_objects | Boolean |
予約カラム email、user_id、prefer_user_id、merge_nested_objects は、Iterable に送信する前にペイロード内のそれぞれ email、userId、preferUserId、mergeNestedObjects を構築するために使用されます。予約カラム以外のフィールドは、Iterable に送信する前に、ペイロード内の data fields に自動的に組み込まれます。
このコネクタは以下のフィールドのみをサポートしています。
| 名前 | 型 | 説明 |
|---|---|---|
| String | ||
| user_id | String |
Truncate は、Iterable リストをクエリ結果と完全に一致させます。クエリ結果に含まれるすべてのユーザーが購読され (add と同様に dataFields が更新されます)、Iterable に存在するがクエリ結果に含まれないすべてのユーザーは購読解除されます。空のクエリ結果も有効な入力であり、リストをクリアします。
このコネクタは add と同じカラムをサポートします。
| 名前 | 型 | 説明 |
|---|---|---|
| String | ||
| user_id | String | userId に変換されます |
| prefer_user_id | Boolean | Iterable の subscribe 呼び出しに転送されます |
| merge_nested_objects | Boolean |
Truncate はメンバーシップのみを操作します。campaign_id、channel_unsubscribe、update_existing_users_only パラメータは、action が truncate の場合は 無視されます — unsubscribe ペイロードは常に channelUnsubscribe=false で campaignId を含まず、subscribe ペイロードには updateExistingUsersOnly が含まれません。channel-unsubscribe のセマンティクスが必要な場合は、action=remove で別ジョブを実行してください。
対象の Iterable プロジェクトタイプをコネクタに指定してください。 Iterable プロジェクトには email_based、userid_based、hybrid の 3 種類があり、ユーザーを識別するルールがそれぞれ異なります。project_type パラメータ (truncate のみで使用) を、対象の Iterable プロジェクトに合わせて設定してください:
- email_based — Iterable は email のみでユーザーを識別します。コネクタはスナップショットの各行をクエリ行と email のみでマッチングし、unsubscribe ペイロードには常に email を使用します。email カラム値のないレコードは拒否されます。
- userid_based — Iterable は userId のみでユーザーを識別します。コネクタは user_id のみでマッチングし、値が email のように見える場合でも、unsubscribe ペイロードには常に userId を使用します。user_id カラム値のないレコードは拒否されます。
- hybrid (デフォルト) — Iterable は両方でユーザーを識別します。コネクタは最初に user_id を試し、見つからなければ email にフォールバックします (Iterable の識別子優先順位に準拠)。スナップショットの行は形式で分類されます (email 形式 → email エントリ、それ以外 → userId エントリ)。
action=truncate と project_type=hybrid の組み合わせでは、メール形式の userId が静かに誤分類されます。 Iterable は識別子の形式をワイヤ上で区別せずに返すため、コネクタは形式から推定します (email 形式 → email ペイロード、それ以外 → userId ペイロード)。メール形式の userId と本物の email を区別する手段はなく、誤分類された行は誤ったユーザーを購読解除します。それでもジョブは成功として報告されます。回避策: project_type=userid_based を設定する (残った行はすべて userId として送信されます)、または add + remove を組み合わせて使用してください。
以下のパラメータを設定してください:

| パラメータ | 値 | 説明 |
|---|---|---|
| action | String | add / remove / truncate |
| project_type | String | email_based / userid_based / hybrid。truncate のみで使用。デフォルトは hybrid。対象の Iterable プロジェクトのタイプと一致させてください。 |
| list_id | Number | |
| update_existing_users_only | Boolean | add のみで使用。 |
| campaign_id | Number | |
| channel_unsubscribe | Boolean | |
| skip_invalid_data | Boolean |
Scheduled Jobs と Result Export を使用して、指定したターゲット宛先に出力結果を定期的に書き込むことができます。
Treasure Data のスケジューラー機能は、高可用性を実現するために定期的なクエリ実行をサポートしています。
2 つの仕様が競合するスケジュール仕様を提供する場合、より頻繁に実行するよう要求する仕様が優先され、もう一方のスケジュール仕様は無視されます。
例えば、cron スケジュールが '0 0 1 * 1' の場合、「月の日」の仕様と「週の曜日」が矛盾します。前者の仕様は毎月 1 日の午前 0 時 (00:00) に実行することを要求し、後者の仕様は毎週月曜日の午前 0 時 (00:00) に実行することを要求するためです。後者の仕様が優先されます。
Data Workbench > Queries に移動します
新しいクエリを作成するか、既存のクエリを選択します。
Schedule の横にある None を選択します。

ドロップダウンで、次のスケジュールオプションのいずれかを選択します:

ドロップダウン値 説明 Custom cron... Custom cron... の詳細を参照してください。 @daily (midnight) 指定されたタイムゾーンで 1 日 1 回午前 0 時 (00:00 am) に実行します。 @hourly (:00) 毎時 00 分に実行します。 None スケジュールなし。

| Cron 値 | 説明 |
|---|---|
0 * * * * | 1 時間に 1 回実行します。 |
0 0 * * * | 1 日 1 回午前 0 時に実行します。 |
0 0 1 * * | 毎月 1 日の午前 0 時に 1 回実行します。 |
| "" | スケジュールされた実行時刻のないジョブを作成します。 |
* * * * *
- - - - -
| | | | |
| | | | +----- day of week (0 - 6) (Sunday=0)
| | | +---------- month (1 - 12)
| | +--------------- day of month (1 - 31)
| +-------------------- hour (0 - 23)
+------------------------- min (0 - 59)次の名前付きエントリを使用できます:
- Day of Week: sun, mon, tue, wed, thu, fri, sat.
- Month: jan, feb, mar, apr, may, jun, jul, aug, sep, oct, nov, dec.
各フィールド間には単一のスペースが必要です。各フィールドの値は、次のもので構成できます:
| フィールド値 | 例 | 例の説明 |
|---|---|---|
| 各フィールドに対して上記で表示された制限内の単一の値。 | ||
フィールドに基づく制限がないことを示すワイルドカード '*'。 | '0 0 1 * *' | 毎月 1 日の午前 0 時 (00:00) に実行するようにスケジュールを設定します。 |
範囲 '2-5' フィールドの許可される値の範囲を示します。 | '0 0 1-10 * *' | 毎月 1 日から 10 日までの午前 0 時 (00:00) に実行するようにスケジュールを設定します。 |
カンマ区切りの値のリスト '2,3,4,5' フィールドの許可される値のリストを示します。 | 0 0 1,11,21 * *' | 毎月 1 日、11 日、21 日の午前 0 時 (00:00) に実行するようにスケジュールを設定します。 |
周期性インジケータ '*/5' フィールドの有効な値の範囲に基づいて、 スケジュールが実行を許可される頻度を表現します。 | '30 */2 1 * *' | 毎月 1 日、00:30 から 2 時間ごとに実行するようにスケジュールを設定します。 '0 0 */5 * *' は、毎月 5 日から 5 日ごとに午前 0 時 (00:00) に実行するようにスケジュールを設定します。 |
'*' ワイルドカードを除く上記の いずれかのカンマ区切りリストもサポートされています '2,*/5,8-10' | '0 0 5,*/10,25 * *' | 毎月 5 日、10 日、20 日、25 日の午前 0 時 (00:00) に実行するようにスケジュールを設定します。 |
- (オプション) Delay execution を有効にすることで、クエリの開始時刻を遅延させることができます。
クエリに名前を付けて保存して実行するか、単にクエリを実行します。クエリが正常に完了すると、クエリ結果は指定された宛先に自動的にエクスポートされます。
設定エラーにより継続的に失敗するスケジュールジョブは、複数回通知された後、システム側で無効化される場合があります。
(オプション) Delay execution を有効にすることで、クエリの開始時刻を遅延させることができます。
Audience Studio で activation を作成することで、segment データをターゲットプラットフォームに送信することもできます。
- Audience Studio に移動します。
- parent segment を選択します。
- ターゲット segment を開き、右クリックして、Create Activation を選択します。
- Details パネルで、Activation 名を入力し、前述の Configuration Parameters のセクションに従って activation を設定します。
- Output Mapping パネルで activation 出力をカスタマイズします。

- Attribute Columns
- Export All Columns を選択すると、変更を加えずにすべての列をエクスポートできます。
- + Add Columns を選択して、エクスポート用の特定の列を追加します。Output Column Name には、Source 列名と同じ名前があらかじめ入力されます。Output Column Name を更新できます。+ Add Columns を選択し続けて、activation 出力用の新しい列を追加します。
- String Builder
- + Add string を選択して、エクスポート用の文字列を作成します。次の値から選択します:
- String: 任意の値を選択します。テキストを使用してカスタム値を作成します。
- Timestamp: エクスポートの日時。
- Segment Id: segment ID 番号。
- Segment Name: segment 名。
- Audience Id: parent segment 番号。
- + Add string を選択して、エクスポート用の文字列を作成します。次の値から選択します:
- Schedule を設定します。

- スケジュールを定義する値を選択し、オプションでメール通知を含めます。
- Create を選択します。
batch journey の activation を作成する必要がある場合は、Creating a Batch Journey Activation を参照してください。
CLI(Toolbelt) を使用して Iterable への Result Export を実行することもできます。
td query コマンドの --result オプションとして、Iterable サーバーへのエクスポート情報を指定する必要があります。td query コマンドについては、こちらの記事を参照してください。
オプションの形式は JSON で、一般的な構造は以下の通りです。
{
"type" : "iterable",
"api_key" : "xxxxxxxxxxxxxx",
"region" : "<us|eu>",
"action": "<add|remove|truncate>",
"project_type": "<email_based|userid_based|hybrid>",
"list_id": "xxxxxxxxxxx",
"channel_unsubscribe": "false",
"skip_invalid_data": "true"
}| 名前 | 説明 | 値 | デフォルト値 | 必須 |
|---|---|---|---|---|
| type | エクスポート先のサービス名を記述します。 | Iterable | N/A | はい |
| api_key | Data Center にアクセスするための API キー | API Key | N/A | はい |
| region | Data Center のリージョン | Region | US | いいえ |
| action | データをエクスポートするアクション | add、remove、または truncate | add | はい |
| project_type | Iterable プロジェクトタイプ。truncate のみで使用。対象の Iterable プロジェクトと一致させる必要があります。 | email_based、userid_based、または hybrid | hybrid | いいえ |
| list_id | リスト ID | List ID | N/A | はい |
| skip_invalid_data | 無効なレコードをスキップしてジョブを失敗させない | true または false | false | いいえ |
| channel_unsubscribe | 削除されたユーザーをリストの関連チャネルからグローバルに購読解除します。remove のみで使用。truncate では無視されます。 | true または false | false | いいえ |
| campaign_id | アクションをキャンペーンに帰属させます。remove のみで使用。truncate では無視されます。 | Campaign ID | N/A | いいえ |
| update_existing_users_only | 既存の Iterable ユーザーのみを更新し、新規ユーザーを作成しません。add のみで使用。truncate では無視されます。 | true または false | false | いいえ |
td query \
--result '{"type":"iterable","api_key":"xxx","region":"us","action":"remove","list_id":"xxxx", "skip_invalid_data":true,"channel_unsubscribe": "false"}' \
-d sample_datasets "select * from www_access" \
-T prestoアクションは以下の値を受け付けます:
- add
- remove
- truncate
_export:
td:
database: example_database
+iterable_export_task:
td>: export_iterable.sql
database: ${td.database}
result_connection: iterable
result_settings:
type: iterable
region : us # or eu
action: add
list_id: 769207
skip_invalid_data: false_export:
td:
database: example_database
+iterable_remove_task:
td>: export_iterable.sql
database: ${td.database}
result_connection: iterable
result_settings:
type: iterable
region : us # or eu
action: remove
list_id: 769207
campaign_id: 222
channel_unsubscribe: false
skip_invalid_data: falseリストのメンバーシップをクエリ結果と置き換えます。クエリは、リストに残す (または追加する) 必要のあるすべてのユーザーを選択し、それ以外のユーザーは削除されます。
_export:
td:
database: example_database
+iterable_truncate_task:
td>: export_iterable.sql
database: ${td.database}
result_connection: iterable
result_settings:
type: iterable
region : us # or eu
action: truncate
# project_type のデフォルトは "hybrid"。対象の Iterable プロジェクトが
# email_based または userid_based の場合は明示的に設定してください。
project_type: userid_based # email_based | userid_based | hybrid
list_id: 769207
skip_invalid_data: false