この機能はベータ版です。詳細については、カスタマーサクセス担当者にお問い合わせください。
Pinterestは、画像や動画を通じてアイデアを発見・共有するために設計された人気のソーシャルメディアプラットフォームで、一般的にPinと呼ばれます。様々なマーケティング目標のため、企業はPinterest Adsに料金を支払い、ユーザーが最も目にしやすい目立つ位置にプロモートされたPinを配置できます。
Pinterest Conversions APIを使用することで、この連携により広告主はコンバージョンイベントをPinterestに直接送信し、キャンペーンの最適化、ターゲティング、コンバージョンレポート作成を行い、コンバージョンの可視性を向上させることができます。この連携は以下のコンバージョンタイプをサポートしています:
- Web
- In-App
- Offline conversions
ユーザー属性はマッチング目的で一緒にエクスポートされ、エクスポートにはカスタム属性(製品属性など)も含まれます。
- Treasure Dataの基本知識
- Pinterest Ads Managerの基本知識
- Pinterestビジネスアカウント
- Pinterest Conversion API用のアクセストークン。Generate an access token for Pinterest Conversion APIを参照してください。
- Conversion APIには、広告アカウントあたり1分間に5000回の呼び出しというレート制限があります。Pinterest API Rate Limitsを参照してください。
- イベントの重複排除は、使用する場合、48時間のウィンドウ内でのみ有効です。
- この連携はPinterestへのテストイベントの送信をサポートしていますが、アップロードされるイベント数を制限しません。Treasure Dataでは、大量のテストイベントを送信しないことを推奨します。
Treasure Dataでは、クエリを実行する前にデータ接続を作成および設定する必要があります。データ接続の一部として、連携へのアクセスに必要な認証情報を提供します。
TD Consoleを開きます。
Integrations Hub > Catalogに移動します。
Pinterest Conversionを検索します。
Create Authenticationを選択します。

Pinterest Conversion Ads Manager用のアクセストークンを入力します。
Continueを選択します。
Authenticationの名前を入力し、Doneを選択します。
| フィールド | 説明 |
|---|---|
| Access token | アクセストークンはPinterest Conversion Ads Managerで生成されます。Generate an access token for Pinterest Conversion APIを参照してください。 |
TD Consoleは、データをエクスポートする複数の方法をサポートしています。以下は、Data Workbenchからデータをエクスポートする手順です。
- Data Workbench > Queriesに移動します。
- New Queryを選択し、クエリを定義します。
- Export Resultsを選択します。
- 既存のPinterest Conversion認証を選択するか、新しく作成します(Create a New Connectionを参照)。
- エクスポートパラメータを設定し、Doneを選択します。
- Export Resultsパラメータ
| フィールド | 説明 |
|---|---|
| Ad Account ID | PinterestのWebサイトで、「Business avatar」を選択し、「Ad accounts」を選択すると、利用可能な広告アカウントのリストが表示されます。アカウントIDはURLからも確認できます。例: https://ads.pinterest.com/advertiser/549xxxxxx761/ |
| Test Event | (デフォルト: off) 有効にすると、クエリ結果はテストイベントとしてアップロードされ、ConversionsのTest eventsメニューで確認できます。Treasure Dataでは、少数のテストイベントの送信を推奨します。 |
| Skip invalid records | (デフォルト: on) チェックすると、必須データ要件とデータ形式を満たさないレコードはアップロードされません。チェックしない場合、連携は最初の無効なレコードに遭遇したときにエラーを発生させ、実行を停止します |
ハッシュ化—以下のHashing列でYesとマークされているフィールドは、小文字にしてSha256でハッシュ化する必要があります。平文で提供された場合、連携がハッシュ化します。
文字列の配列—Array of string型のフィールドは、フラット化された列名で複数の値を受け入れます。例えば、em、em_1、em_2は、ユーザーのメール文字列の配列を形成できます。
アイテムオブジェクトの配列—Pinterestでは、ID、名前、数量、価格などの多くの属性を持つ複数の注文アイテムをアップロードできます。以下はアイテムオブジェクトの例です:
- item_id, item_price,item_quantity
- item_id_1, item_price_1, item_name_1
- item_id_2, item_brand_2, item_category_2
| Name | Type | Value | Required | Hashing | ||||
|---|---|---|---|---|---|---|---|---|
| Event data | ||||||||
event_name | String | イベントのタイプ Enum: | Yes | |||||
action_source | String | イベントが発生したソース Enum: | Yes | |||||
| event_time | Int64 | イベントが発生した時刻。Unixタイムスタンプ(秒単位)です。 | Yes | |||||
| event_id | String | APIとPinterestタグを介して取り込まれたイベント間の重複排除をサポートする一意のID文字列 | Yes | |||||
| event_source_url | String | WebコンバージョンイベントのURL | ||||||
| opt_out | Boolean | 広告トラッキングに対するユーザーのオプトアウト。以下の場合にYESを送信:
| ||||||
| app_id | String | アプリストアのアプリID | ||||||
| app_name | String | アプリの名前 | ||||||
| app_version | String | アプリのバージョン | ||||||
| device_brand | String | ユーザーデバイスのブランド | ||||||
| device_carrier | String | ユーザーデバイスのモデル | ||||||
| device_type | String | ユーザーデバイスのタイプ | ||||||
| os_version | String | デバイスのオペレーティングシステムのバージョン | ||||||
| wifi | Boolean | イベントがWi-Fi使用中に発生したかどうか | ||||||
| language | String | ユーザーの言語(2文字のISO-639-1言語コード) | ||||||
| User attributes - for matching purposes | ||||||||
| em | Array of strings | マッチングに使用されるユーザーのメールアドレス | 以下のうち少なくとも1つが必要です:
| Yes | ||||
| hashed_maids | Array of strings | Google GAID または Apple IDFA | Yes | |||||
| client_ip_address | String | ユーザーのIPアドレス(IPv4またはIPv6形式) | ||||||
| client_user_agent | String | ユーザーのWebブラウザのユーザーエージェント文字列 | ||||||
| ph | Array of strings | ユーザーの電話番号(国番号と市外局番を含む、数字のみ、先頭のゼロなし) | Yes | |||||
| ge | Array of strings | ユーザーの性別(小文字)。f、m、または n のいずれか | Yes | |||||
| db | Array of strings | ユーザーの生年月日(年、月、日) | Yes | |||||
| ln | Array of strings | ユーザーの姓 | Yes | |||||
| fn | Array of strings | ユーザーの名 | Yes | |||||
| ct | Array of strings | ユーザーの都市(スペースや句読点なし) | Yes | |||||
| st | Array of strings | ユーザーの州(2文字コード) | Yes | |||||
| zp | Array of strings | ユーザーの郵便番号(数字のみ) | Yes | |||||
| country | Array of strings | ユーザーの国(2文字のISO-3166コード) | Yes | |||||
| external_id | Array of strings | 広告主から提供される、広告主の領域でユーザーを識別する一意のID。例:ユーザーID、ロイヤルティIDなど | Yes | |||||
| click_id | String | ドメインの _epik cookie またはURLの &epik= クエリパラメータに保存されている一意の識別子 | ||||||
| partner_id | String | サードパーティパートナーによって定義される訪問者の識別子 | ||||||
| Custom data | ||||||||
| currency | String | ISO-4217通貨コード | ||||||
| value | String | イベントの合計金額。Treasure Dataでは税抜、送料抜きの金額を使用することを推奨しています | ||||||
| content_ids | Array of strings | 商品IDのリスト | ||||||
| content_name | String | イベントに関連するページまたは商品の名前 | ||||||
| content_category | String | イベントに関連するコンテンツのカテゴリ | ||||||
| content_brand | String | イベントに関連するコンテンツのブランド | ||||||
| item_id | String | 商品のID(contentsオブジェクト配列のフィールド) | ||||||
| item_price | String | 商品の価格(contentsオブジェクト配列のフィールド) | ||||||
| item_quantity | Int64 | 商品の数量(contentsオブジェクト配列のフィールド) | ||||||
| item_name | String | 商品の名前(contentsオブジェクト配列のフィールド) | ||||||
| item_category | String | 商品のカテゴリ(contentsオブジェクト配列のフィールド) | ||||||
| item_brand | String | 商品のブランド(contentsオブジェクト配列のフィールド) | ||||||
| num_items | Int64 | イベントの商品の合計数 | ||||||
| order_id | String | 注文ID。必要に応じて重複排除に使用できます | ||||||
| search_string | String | ユーザーコンバージョンイベントに関連する検索文字列 | ||||||
opt_out_type | String | 異なるプライバシー権法に基づいて個人情報の共有をオプトアウトするためのカンマ区切りのフラグ。 現在、米国の一部の州のCPRA法に準拠するための | ||||||
最低限必要なフィールド
SELECT
'add_to_cart' AS event_name
,'app_android' AS action_source
,now() AS event_time
,'801470028' AS event_id
,'some_one@mail.com' AS em
FROM
your_table文字列の配列
SELECT 'add_to_cart' AS event_name ,'app_android' AS action_source ,now() AS event_time ,'59930360' AS event_id ,'some_one@mail.com' AS em ,'another_one@gmail.com' AS em_1 ,'or123' AS order_id ,'cook' AS search_string ,'item 1' AS item_id_1 ,'10.4' AS item_price_1 ,20 AS item_quantity_1 ,'basket' AS item_name_2 ,'cat ' AS item_category_2 ,'tiny' AS item_brand_2 FROM your_tableAudience Studioでアクティベーションを作成することにより、セグメントデータをターゲットプラットフォームに送信することもできます。
- Audience Studioに移動します。
- 親セグメントを選択します。
- ターゲットセグメントを開き、右クリックしてCreate Activationを選択します。
- Detailsパネルで、アクティベーション名を入力し、前のセクションの設定パラメータに従ってアクティベーションを設定します。
- Output Mappingパネルでアクティベーション出力をカスタマイズします。

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

- スケジュールを定義する値を選択し、必要に応じてメール通知を含めます。
- Createを選択します。
TD Toolbelt を使用すると、CLI からクエリ結果のエクスポートをトリガーできます。エクスポートジョブのパラメータは、td query コマンドの --result オプションで指定する必要があります。詳細については、コマンドラインから Treasure Data へのクエリとデータのインポートを参照してください。
以下は、オプションの一般的な構造と JSON 形式の例です:
{ "type": "pinterest_conversion", "access_token": "pina_AIA2RFAxxx", "ad_account_id": 549764609761, "test_event": false, "skip_invalid_record": true}CLI パラメータ
| Name | Description | Value | Default Value | Required |
|---|---|---|---|---|
| access_token | Pinterest Ad Manager から取得した Pinterest conversion のアクセストークン | String | No | Yes |
| ad_account_id | Pinterest Ads アカウント ID | Number | No | Yes |
| test_event | テストまたは実際のイベントを Pinterest に送信するためのフラグ | Boolean | false | No |
| skip_invalid_record | 無効なレコードが検出された場合にジョブを続行するためのフラグ | Boolean | false | No |
実際のイベントとテストイベントの送信例
- テストコンバージョンイベントを送信
td --database test_db \
--wait "SELECT event_name, action_source, event_time, event_id, event_source_url, opt_out, partner_name, app_id, app_name, app_version, device_brand, device_carrier, device_type, os_version, wifi, language, em, hashed_maids, client_ip_address, client_user_agent, ph, ge, db, ln, fn, ct, st, zp, country, external_id, click_id, partner_id, currency, value, content_ids, content_name, content_category, content_brand, item_id, item_id_1, item_id_2, item_price, item_price_1, item_price_2, item_name, item_name_1, item_name_2, item_category, item_category_1, item_category_2, item_brand, item_brand_1, item_brand_2, item_quantity, item_quantity_1, item_quantity_2, num_items, order_id, search_string, opt_out_type from test_table" \
--type presto \
--result '{"type":"pinterest_conversion","td_authentication_id": 12345, "access_token":"pina_AIA2RFAWACYNMAQA...", "ad_account_id": 5497xxx, "test_event": true, "skip_invalid_record":true}'- 実際のイベントを送信
td --database test_db \
--wait "SELECT event_name, action_source, event_time, event_id, event_source_url, opt_out, partner_name, app_id, app_name, app_version, device_brand, device_carrier, device_type, os_version, wifi, language, em, hashed_maids, client_ip_address, client_user_agent, ph, ge, db, ln, fn, ct, st, zp, country, external_id, click_id, partner_id, currency, value, content_ids, content_name, content_category, content_brand, item_id, item_id_1, item_id_2, item_price, item_price_1, item_price_2, item_name, item_name_1, item_name_2, item_category, item_category_1, item_category_2, item_brand, item_brand_1, item_brand_2, item_quantity, item_quantity_1, item_quantity_2, num_items, order_id, search_string, opt_out_type from test_table" \
--type presto \
--result '{"type":"pinterest_conversion","td_authentication_id": 12345, "access_token":"pina_AIA2RFAWACYNMAQA...", "ad_account_id": 5497xxx, "test_event": false, "skip_invalid_record":true}'- 結果エクスポートはスケジュール設定により、ターゲット宛先へのデータアップロードを定期的に実行できます。
- すべてのインポートおよびエクスポート連携は、TD Workflow に追加できます。td>: データオペレータを使用して、クエリ結果を指定されたコネクタにエクスポートできます。詳細については、Treasure Data オペレータリファレンスを参照してください。
このセクションでは、Conversion API のアクセストークンを生成する方法の概要を説明します。Pinterest は事前の通知なく詳細な手順を変更する場合がありますのでご注意ください。
Pinterest Ad Manager から、メインメニューに移動し、Conversions を選択します。

Conversions ページで、Set up API を選択し、Generate new token を選択します。
有効期限のないアクセストークン ``` pina_xxxxxxx が生成されます
