Skip to content
Last updated

Marketo Export Integration

Marketo Import Integrationについて詳しく見る

Treasure Dataのジョブ結果をMarketoアカウントのレコードに直接書き込むコネクタを作成できます。TDクエリジョブの結果により、Marketoターゲットリストへの追加や既存ユーザーの更新などのユーザー追加が可能です。

Marketoへのエクスポートのサンプルワークフローについては、Treasure Boxesをご覧ください。

前提条件

  • TD Toolbeltを含むTreasure Dataの基本知識。
  • APIアクセスが有効化されたMarketoアカウント(Marketoコンソールから実行)。

新しい接続を作成する

  1. Integrations Hub > Catalogに移動します。Marketoを選択します。

  1. ダイアログが開きます。

  1. Marketoの認証情報を入力して、新しい接続情報を完成させます。
  • Marketo Account ID(必須):MarketoサービスID/Munchkin ID。
  • Marketo Client ID(必須):サービス固有のクライアントID。
  • Marketo Client Secret(必須):サービス固有のクライアントシークレット。
  1. 新しく作成した接続の名前を入力し、Doneを選択します。

Marketo接続への結果出力を設定する

  1. クエリエディタの上部にあるoutput resultsを確認し、Marketo接続を選択します。

完了する必要があるいくつかのパラメータフィールドがあります。

パラメータタイプ必須?説明
Modestringyesコネクタモードはupload_leadsまたはdelete_leadsになります。デフォルトはupload_leadsです。
Marketo Target List IDstringyes新しいリードがインポートされるリストのID。リストは既存のリストから選択する必要があります。そうでない場合、新しいリードはMarketoの中央データベースに格納されます。
Headers for importing datastringnoエクスポート対象フィールドとしてヘッダーを指定します。クエリに加えて、ここでフィールド名を指定します。
Marketo Partition Namestringno新しいリードが属するパーティションの名前。
Lookup Fieldstringnoこのフィールドの値はこのデータセットにバインドされ、データセットの検索や重複排除に使用できます。デフォルトはemailです。
Retry limitintegernoコネクタが接続とデータ送信を試みるのを停止するまでの再試行回数。デフォルトの再試行制限は6です。
Retry initial wait in millisecondsintegerno回復可能なエラーが発生した場合の再試行間隔(ミリ秒)。デフォルトは1000です。
Retry Max wait in millisecondsintegerno再試行間の最大待機時間(ミリ秒)。デフォルトは30000です。
Max HTTP waiting time in millisecondsintegerno最大HTTP待機時間。デフォルトは3000000です。
Max upload chunk size (in bytes)integernoアップロードする最大チャンクサイズ。デフォルトは10000000です。
Batch max wait in millisecondsintegernoバッチの最大待機時間。デフォルトは3600000です。
Ignore Invalid Recordsbooleanno削除時に無効なレコードを無視します。デフォルトはfalseです。
Skip Invalid Recordsbooleannoアップロードデータ中の無効なレコードを無視します。デフォルトはtrueです。

サンプル設定

リストIDはMarketoコンソールで確認できます:

Audience Studioでセグメントをアクティベートする

Audience Studioでアクティベーションを作成することで、ターゲットプラットフォームにセグメントデータを送信することもできます。

  1. Audience Studioに移動します。
  2. 親セグメントを選択します。
  3. ターゲットセグメントを開き、右クリックしてCreate Activationを選択します。
  4. Detailsパネルで、アクティベーション名を入力し、前のセクションの設定パラメータに従ってアクティベーションを設定します。
  5. Output Mappingパネルでアクティベーション出力をカスタマイズします。

  • Attribute Columns
    • Export All Columnsを選択すると、変更を加えずにすべての列をエクスポートします。
    • + Add Columnsを選択して、エクスポート用の特定の列を追加します。Output Column Nameには、同じSourceカラム名が事前入力されます。Output Column Nameを更新できます。アクティベーション出力に新しい列を追加するには、+ Add Columnsを選択し続けます。
  • String Builder
    • + Add stringを選択して、エクスポート用の文字列を作成します。以下の値から選択します:
      • String:任意の値を選択。テキストを使用してカスタム値を作成します。
      • Timestamp:エクスポートの日時。
      • Segment Id:セグメントID番号。
      • Segment Name:セグメント名。
      • Audience Id:親セグメント番号。
  1. Scheduleを設定します。

  • スケジュールを定義する値を選択し、オプションでメール通知を含めます。
  1. Createを選択します。

(オプション)CLIを使用したExport Integration

TD Toolbeltを使用して、CLIからMarketoへのクエリ結果のエクスポートをトリガーできます。td queryコマンドの--resultオプションを使用して、エクスポートジョブのパラメータを指定する必要があります。詳細については、Querying and Importing Data to Treasure Data from the Command Lineを参照してください。

オプションの形式はJSONで、一般的な構造は次のとおりです:

For upload lead mode

{"type": "marketo",  "account_id": "account id",  "client_id": "client id",  "client_secret": "client secret",  "mode": "upload_leads",  "list_id": "list id",  "batch_max_wait_msec": 3600000,  "upload_chunk_size_in_bytes": 10000000,  "retry_limit": 7,  "retry_initial_wait_msec": 1000,  "max_retry_wait_msec": 32000,  "http_timeout_millis": 300000,  "skips_invalid_records": true}# For delete mode{  "type": "marketo",  "account_id": "account id",  "client_id": "client id",  "client_secret": "client secret",  "mode": "delete_leads",  "list_id": "list id",  "batch_max_wait_msec": 3600000,  "upload_chunk_size_in_bytes": 10000000,  "retry_limit": 7,  "retry_initial_wait_msec": 1000,  "max_retry_wait_msec": 32000,  "http_timeout_millis": 300000,  "ignore_invalid_records": false}

CLIパラメータ

パラメータタイプ必須?説明
typestringyesエクスポートタイプ。正確な値として「marketo」である必要があります。
account_idstringyesこのサービス/アカウントに必要な特定のMarketo Munchkin ID。
client_idstringyesクライアントID。Marketoコンソールから取得可能。
client_secretstringyesクライアントシークレット。Marketo コンソールから取得できます。
modestringyesコネクターモードは upload_leads または delete_leads のいずれかです。
list_idstringyes新しいリードがインポートされるリストの ID。リストは既存のリストである必要があります。そうでない場合、新しいリードは Marketo の中央データベースに送られます。
file_formatstringno使用するファイル形式。デフォルト形式は CSV です。
headersstringnoエクスポート対象フィールドとしてヘッダーを指定します。クエリに加えて、ここでフィールド名を指定します。
partition_namestringno新しいリードが属するパーティションの名前。
lookup_fieldstringnoこのフィールドの値はこのデータセットに関連付けられ、データセットの検索または重複排除に使用できます。デフォルトは email です。
retry_limitintegernoコネクターが接続とデータ送信を試行するのを停止するまでの再試行回数。再試行制限のデフォルトは 6 です。
retry_initial_wait_msecintegerno回復可能なエラーが発生した場合の再試行間隔(ミリ秒)。デフォルトは 1000 です。
max_retry_wait_msecintegerno再試行間の最大待機時間(ミリ秒)。デフォルトは 30000 です。
http_timeout_millisintegernoHTTP の最大待機時間。デフォルトは 3000000 です。
upload_chunk_size_in_bytesintegernoアップロードする最大チャンクサイズ。デフォルトは 10000000 です。
batch_max_wait_msecintegernoバッチの最大待機時間。デフォルトは 3600000 です。
ignore_invalid_recordsbooleanno削除時に無効なレコードを無視します。デフォルトは false です。
skip_invalid_recordsbooleannoデータアップロード時に無効なレコードを無視します。デフォルトは true です。

td query -d [database] -w 'SELECT id, email, company FROM marketo' --type presto --result '{"type":"marketo", "account_id":"[account id]", "client_id":"[client id]", "client_secret":"[client secret]", "mode":"upload_leads", "list_id":"[list id]", "retry_limit": 3}';

リードリストを設定するクエリの記述

TD Console で、以下のクエリを実行し、Output results を Marketo との接続に出力します。このクエリは実際のユーザーと一致せず、デモンストレーション目的のみです。列名の詳細については、Appendix を参照してください。

SELECT
  td_global_id as tdglobalid,
  firstname,
  lastname,
  email,
  company
FROM (
  VALUES
    ('b1b065f5-1222-4a14-b151-379d49ec39e3', 'John', 'Doe', 'name+test1@treasure-data.com', 'Marketo Dummy Lead - DO NOT USE'),
    ('x1b065f5-1222-4a14-b151-379d49ec39e3', 'Janes', 'Doe', 'name+test2@treasure-data.com', 'Marketo Dummy Lead - DO NOT USE'),
    ('p1b065f5-1222-4a14-b151-379d49ec39e3', 'Tony', 'Doe', 'name+test3@treasure-data.com', 'Marketo Dummy Lead - DO NOT USE'),
    ('o1b065f5-1222-4a14-b151-379d49ec39e3', 'Bill', 'Adam', 'name+test4@treasure-data.com', 'Marketo Dummy Lead - DO NOT USE'),
  ('t1b065f5-1222-4a14-b151-379d49ec39e3', 'Dan', 'Steve', 'name+test5@treasure-data.com', 'Marketo Dummy Lead - DO NOT USE')
) tbl
  (
    td_global_id,
    firstname,
    lastname,
    email,
    company
)

このデモクエリには、ソーステーブルは必要ありません(この機能のテストを容易にするため)が、データベースを選択する必要があるため、"sample_datasets" または他の任意のテーブルを選択してください。

設定でデータヘッダーを指定したくない場合は、クエリでエイリアスを使用してクエリ結果の列名を変更できます。

SELECT
  an_email_column AS EMAIL,
  another_phone_column AS PHONE
FROM
  your_table;

前のコードサンプルでは、EMAIL と PHONE のヘッダーを持つ新しいデータセットを作成しています。

列名は大文字と小文字を区別しません。たとえば、email または EMAIL のいずれかを使用できます。

クエリは数秒で完了するはずです。完了したら、Marketo Console で新しいリードを確認してください。

Appendix

Marketo Leads Data

出力結果データは Marketo のデータ仕様 に従う必要があります。

たとえば、フィールドが Integer として設定されている場合、Treasure Data が Marketo に送信するデータは int に変換可能でなければなりません(1001aa は有効な整数ではありません)。

Munchkin Account Information

Marketo リストをアップロードする前に、API 対応アカウントへのアクセスが必要です。Munchkin Account ID は Marketo の Admin ページから取得できます。

API アクセス用の新しいアカウントを有効化して作成する手順

  1. API-Only User を作成します。
  2. API-Only User Role を作成します。
  3. Advanced List Import Permission on a Role を有効にします。
  4. Custom Service for Use with REST API を作成します。
  5. "Web Service" メニューで Rest API のエンドポイントを確認します。そこで、API を使用するための client ID と client secret を見つけることができます。

Preparing Data for Marketo Leads - Reference