Skip to content
Last updated

Sailthru Export Integration From The Command Line

CLIを介して(TD Toolbelt)、Treasure DataからSailthruにクエリ結果データをエクスポートします。

前提条件

  • TD Toolbeltがインストールされていること。
  • Sailthruの基本知識とアカウント。

コマンドラインを使用した接続の作成

CLIを使用して接続を設定できます。

td query --database your_database --result configuration query

次の表では、設定キーと説明を示します。

設定キー必須説明
typestringはいsailthru
targetstringはい"list"または"user"のいずれか。
api_keystringはいSailthruから提供されたAPIキー。確立された認証を使用した結果エクスポート(ConsoleのクエリResult Exportまたはワークフローを使用)とは異なり、CLIのパラメータでAPIキーを明示的に指定する必要があります。
api_secretstringはいSailthruから提供されたAPIシークレット。APIキーと同様に、APIシークレットも指定する必要があります。
list_namestringはい(target: "list"の場合)送信先のリスト名。リストが存在しない場合は新しいリストが作成され、既存のリストが更新されます。Sailthruでリスト名を確認できます。
list_typestringいいえPrimaryまたはSecondaryのいずれかを選択します。Primaryリストは、定期的かつ周期的に送信するメインの購読者リストです。リストの成長を追跡したい場合は、プライマリとしてマークする必要があります。Secondaryリストは、成長レポートが不要なリストです。成長は追跡されないため、プライマリリストのレポートには表示されません。オプションが選択されている場合、既存のリストはこのタイプに更新されます。どちらも選択されていない場合、リストタイプは以前のままです。プライマリリストとセカンダリリストの違いについては、Sailthruを参照してください。
list_public_namestringいいえ購読者に表示される名前(オプトアウトページなど)。
user_keystringはい(target: userの場合)id列の対応するタイプを選択します – email、SMS、sid、extid。
user_ignore_errorbooleanいいえチェックすると、ユーザーを作成/更新できない場合でもエクスポートジョブは続行されます。チェックしない場合、エラーレコードが発生するとジョブは終了します。
user_keys_columnsstringいいえユーザーのキーを更新するために使用される追加の列(カンマ区切り)。列名はキータイプと正確に一致する必要があります。
user_keys_conflict_resolutionstringいいえ"error"は、競合が発生した場合(変更されたキーがSailthruデータベースに既に存在する別のキーと一致する場合)にジョブを終了します。"merge"は、現在のidを持つユーザーと競合するユーザーの解決を試みます。
user_vars_columnstringいいえユーザーの追加変数として使用される列。
user_liststringいいえユーザーが所属するリストを更新します。値は次の構文に準拠する必要があります: `"List Name": 0
user_optout_templatesstringいいえuser_list設定と同様ですが、これはオプトアウトテンプレートからユーザーを追加/削除するためのものです。
bulk_user_keystringはい(target: bulk_userの場合)id列の対応するタイプを選択します --email、SMS、sid、extid。
bulk_user_keys_columnsstringいいえuser_keys_columnsと同様ですが、target: bulk_userの場合。
bulk_user_vars_columnstringいいえuser_vars_columnsと同様ですが、target: bulk_userの場合。
bulk_user_listsstringいいえuser_listsと同様ですが、target: bulk_userの場合。
bulk_user_ignore_errorstringいいえuser_ignore_errorと同様ですが、target: bulk_userの場合。

: メールをリストに出力

td query --database my_db \
--result '{
           "type": "sailthru",
           "api_key": "xxx"
           "api_secret": "yyy"
           "target": "list",
           "list_name": "My List"
         }' \
'SELECT email from your_table'

: ユーザーの出力

td query --database my_db \
--result '{
    "type": "sailthru",
    "api_key": "xxx",
    "api_secret": "yyy",
    "target": "user",
    "user_key": "email",
    "user_keys_columns": "sms, extid",
    "user_vars_columns": "name, address",
    "user_lists": "\"My List\": 1, \"Other List\": 0",
    "user_key_conflict_resolution": "merge",
    "user_optout_templates": "\"My Template\": 1",
    "user_ignore_error": true
  }' \
'SELECT email as id, sms, extid, name, address from your_table'

: ユーザーの一括出力

td query --database my_db \
--result '{
    "type": "sailthru",
    "api_key": "xxx",
    "api_secret": "yyy",
    "target": "user",
    "bulk_user_key": "email",
    "bulk_user_keys_columns": "sms, extid",
    "bulk_user_vars_columns": "name, address",
    "bulk_user_lists": "\"My List\": 1, \"Other List\": 0",
    "bulk_user_ignore_error": true
  }' \
'SELECT email as id, sms, extid, name, address from your_table'

スケジュール実行

詳細については、以下を参照してください。