# Facebook Lead Ads インポート連携 Facebook Lead Ads Connectorを使用して、FacebookページまたはAd AccountをTreasure Dataに接続し、リードデータをインポートできます。 ## 前提条件 - [TD Toolbelt](https://toolbelt.treasuredata.com/)を含むTreasure Dataの基本知識 - リード取得権限を持つFacebookページ/Adアカウント - 認可されたTreasure Dataアカウントへのアクセス ## Ad IDとForm IDの取得 ### Ad ID Ad Managerの画面にAd ID列を追加することで、Ad IDを取得できます。Ads Managerの画面から、右側の(+)記号をクリックし、「Customize Columns...」を選択して、画像に示されているようにAd ID列を検索します。 ![](/assets/screen-shot-2020-02-22-at-4.28.21-pm.7671904a53ee4718f1a50faad7c9460ddc6c4a30d8785c4d233ac4f3e0eba575.53b79903.png) ### Form ID Form IDは、Publishing Tools > Lead Ads Formから取得でき、画像に示されているように既存のFormにカーソルを合わせます。 ![](/assets/screen-shot-2020-02-22-at-4.29.09-pm.26512d51670946040e3c2bf7b503aa901e114a7fd6fd4f163869b49faa3e93d2.53b79903.png) ### リードフォームのフィールド名の取得 1. **Lead Ads Forms**に移動します。 ![](/assets/image2021-1-12_16-53-3.3a90ab224b518ac07b9e13f839ba4c3d2b0c8bced05b0b4fa20f116e0e581026.53b79903.png) 1. **Download new leads**を選択します。 ![](/assets/image2021-1-12_16-54-25.7239d0f369ee9818e26497678563d6894537ce7035e8e25f9551721e577abf37.53b79903.png) 1. **CSV**を選択してCSVファイルをダウンロードします。 2. ダウンロードしたCSVファイルを開くと、フォームのフィールド名が次のように表示されます: ![](/assets/image2021-1-12_16-56-56.5083933cc091592fa10385ab18c3a3e0454b9f3d99deee8cf22aa45e83ae1273.53b79903.png) キャンペーンのLifetime結果を表示している場合でも、過去90日間のリードのみをダウンロードできます。 ## TD Consoleで新しい接続を作成 FacebookインターフェースとTreasure Dataの両方で設定を完了します。 データ接続を設定する際には、統合にアクセスするための認証を提供します。Treasure Dataでは、認証を設定してからソース情報を指定します。 1. **Integrations Hub > Catalog**に移動し、Facebook Lead Adsを検索して選択します。 ![](/assets/image2021-1-13_8-57-19.1c6286dfada7c999d04b3732d156c5c5121ebb40bbf0da22f5f4bef2015f3d85.53b79903.png) 2. 次のダイアログが開きます。 ![](/assets/screen-shot-2020-02-22-at-3.59.30-pm.b1c30500b10490efbf0c6f9cd47e8d17049d3db449bf47c8d1d60c7f70668f7b.53b79903.png) 3. Treasure DataとFacebookを認証する方法によって、データコネクタがFacebookからインポートできるようにするための手順が異なります。 Oauth 1. `Click here`を選択して新しいアカウントに接続します。まだログインしていない場合は、Facebookへのログイン、またはTreasure Dataへのアクセス権を付与する同意ページにリダイレクトされます。 ![](/assets/screen-shot-2020-02-22-at-4.00.45-pm.61953aa0c97d66b3add87ba517c3784eaa03b611ab1b294a062c530cde20b162.53b79903.png) 2. ポップアップウィンドウでFacebookアカウントにログインします: ![](/assets/data-connector-facebook-login.ffc61a088d2fba0cad93ac39afbcb5c2cf06e120c8fdf113b84fe3855bd8b04d.53b79903.png) 3. Treasure Dataへのアクセス権を付与すると、TD Consoleにリダイレクトされます。 4. Facebook Lead Adsを再度選択します。 5. OAuth認証方法を選択します。 ドロップダウンリストにアカウント名を含むOAuth接続が表示されます。 6. 使用するアカウントを選択し、接続の作成に進みます。 ![](/assets/screen-shot-2020-02-22-at-4.01.51-pm.e6ed2f50b3017728ae7ef9d21e67dc5c6d4f1531e538bc8cddeed0e64b6bff1f.53b79903.png) 7. **Continue**を選択します。 8. Facebook Lead Adsの認証詳細を提供します。 ![](/assets/screen-shot-2020-02-22-at-4.02.52-pm.ebc6b10690e5235f838a872d895ca54568d1fa31b5a6ab40cce98d81139ae59a.53b79903.png) 9. **Done**を選択します。 Access Token この方法で認証するには、長期間有効なAccess TokenとオプションでApp Secretが必要です。 1. Access tokenとApp secretを使用してコネクタを設定する方法の詳細については、こちらを参照してください。 2. Access TokenとApp Secretを入力し、**Continue**をクリックします。 ![](/assets/screen-shot-2020-02-22-at-4.04.56-pm.87cccc2243707547a237484848254d7681b8193566fb222b1f411cc68d6b8988.53b79903.png) 3. 新しいFacebook Lead Ads接続に名前を付けます。 4. **Done**を選択します。 ### FacebookリードデータをTreasure Dataに転送 認証された接続を作成した後、自動的にAuthenticationsタブに移動します。作成した接続を探して**New Source**をクリックします。 1. 作成した接続を検索します。 2. **New Source**を選択します。Create Sourceダイアログが開きます。 ### 接続に名前を付ける 1. Data Transferフィールドで**Source**の名前を入力します。 2. **Next**を選択します。 ![](/assets/screen-shot-2020-02-22-at-4.06.05-pm.99e30504140178bffcfd5dfc37b3ba7e33ca10fdb7822932995d36ec8479cdad.53b79903.png) ### Source Table チェックボックス**Enable Guess Schema**がチェックされている場合、コネクタは最初のLead Adをダウンロードし、このAdのみに対してフィールド名とデータ型のスキーマ推測を実行します。複数のフォームがあり、フィールド名が異なる場合、データのインポートが欠落したり、一貫性がなくなったりする可能性があります。この場合、すべてのフィールド名をFORM FIELDSに入力する必要があります。- id、created_time、ad_id、ad_name、adset_id、adset_name、campaign_id、campaign_name、form_id、platform、is_organicは**予約語**です。これらのフィールド名でFacebookフォームを作成しないでください。これらのフィールドをForm Fieldsに追加しないでください。これらは自動的に追加されます。 1. 以下のパラメータを編集します: ![](/assets/image-20201211-065925.a75784f3254c42a93a050309f6d61c6c8012b62b92be355065ae6daac0ffd75a.53b79903.png) パラメータ: - **Ad Account ID**: (オプション) FacebookのAd Account ID。 - **AD ID/Form ID:** (Ad Account IDが設定されていない場合は必須)Ad IDまたはForm IDによってリードデータをインポートできます。 - **Created Time From:** (オプション) この時刻から現在時刻までに送信されたリードデータをインポートします。このフィールドはISO 8601日付時刻形式を受け入れます。例:2020-01-01T00:00:00+0700。 - **Incremental**: 最後の実行以降の新しいデータのみをインポートします。 - **Enable Guess Schema:** この機能を使用して、コネクタが自動的にフォームフィールドを推測するか、これをクリアしてFORM FIELDSのField NameとData Typeを入力することでフォームフィールドを入力できます。 - **Field Name:** リードフォームのフィールド名。 - **Data Type**: このフィールドのデータ型。 - **Timestamp format**: フィールドがタイムスタンプフィールドの場合、タイムスタンプ形式を提供します。例:%Y-%m-%dT%H:%M:%S%z。 ### Data Settings Data Settingsでは、データ転送をカスタマイズできます。 Column Nameは変更しないでください。リードフォームのフィールド名は、インポート時に列名として使用されます。ただし、フィールド名の特殊文字(英数字またはアンダースコア「_」以外)はサポートされておらず、アンダースコアに変換されます。ただし、Treasure Dataコネクタによって自動生成される追加フィールドである`ad_account_name`と`ad_account_id`は除きます。 1. **Next**を選択します。Data Settingsページが開きます。 2. オプションで、データ設定を編集するか、ダイアログのこのページをスキップします。 - Skip invalid record(s): 選択すると、無効なリードデータをスキップし、他のデータを引き続きインポートします。選択しない場合、無効なデータが検出されるとジョブは失敗します。 - Schema Settings: そのカラムのデータ型またはタイムスタンプ形式が無効であることが判明した場合、**Data Type**または**Timestamp format**カラムを変更できます。 ![](/assets/screenshot_2023-08-26_at_08_27_31.15f2f335ce0656712e9ac7950315977fd5f5f9d9efaa3cc70ce823f05dfac200.53b79903.png) ### 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** で転送の結果を確認できます。