Show Menu
トピック×

Flow Service APIを使用したデータベースの調査

フローサービスは、Adobe Experience Platform内の様々な異なるソースから顧客データを収集し、一元管理するために使用します。 このサービスは、ユーザーインターフェイスとRESTful APIを提供し、サポートされるすべてのソースを接続できます。
このチュートリアルでは、Flow Service APIを使用して、サードパーティのデータベースのコンテンツとファイル構造を調べます。

はじめに

このガイドでは、Adobe Experience Platformの次のコンポーネントについて、十分に理解している必要があります。
  • ソース : Experience Platformを使用すると、様々なソースからデータを取り込むと同時に、プラットフォームサービスを使用して、入力データの構造、ラベル付け、拡張を行うことができます。
  • サンドボックス : Experience Platformは、1つのプラットフォームインスタンスを別々の仮想環境に分割し、デジタルエクスペリエンスアプリケーションの開発と発展に役立つ仮想サンドボックスを提供します。
Flow Service APIを使用してサードパーティのデータベースに正常に接続するために必要な追加情報については、以下の節で説明します。

必要な資格情報の収集

このチュートリアルでは、データを取り込むサードパーティのデータベースとの有効な接続が必要です。 有効な接続には、データベースの接続仕様IDと接続IDが含まれます。 データベース接続の作成とこれらの値の取得について詳しくは、 ソースコネクタの概要を参照してください

サンプルAPI呼び出しの読み取り

このチュートリアルでは、リクエストをフォーマットする方法を示すAPI呼び出しの例を提供します。 例えば、パス、必須のヘッダー、適切にフォーマットされた要求ペイロードなどです。 API応答で返されるサンプルJSONも提供されます。 サンプルAPI呼び出しのドキュメントで使用される表記について詳しくは、Experience PlatformトラブルシューティングガイドのAPI呼び出し例の読み 方に関する節を参照してください

必要なヘッダーの値の収集

プラットフォームAPIを呼び出すには、まず 認証チュートリアルを完了する必要があります 。 次に示すように、認証チュートリアルで、すべてのExperience Platform API呼び出しに必要な各ヘッダーの値を指定します。
  • 認証: 無記名 {ACCESS_TOKEN}
  • x-api-key: {API_KEY}
  • x-gw-ims-org-id: {IMS_ORG}
Experience Platformのすべてのリソース(フローサービスに属するリソースを含む)は、特定の仮想サンドボックスに分離されます。 プラットフォームAPIへのすべてのリクエストには、操作が実行されるサンドボックスの名前を指定するヘッダーが必要です。
  • x-sandbox-name: {SANDBOX_NAME}
ペイロード(POST、PUT、PATCH)を含むすべての要求には、追加のメディアタイプヘッダーが必要です。
  • Content-Type: application/json

データテーブルの調査

データベースの接続IDを使用して、GET要求を実行することで、データテーブルを調査できます。 次の呼び出しを使用して、プラットフォームに対して検査または取り込むテーブルのパスを探します。
API形式
GET /connections/{BASE_CONNECTION_ID}/explore?objectType=root

パラメーター
説明
{BASE_CONNECTION_ID}
データベース接続のID。
リクエスト
curl -X GET \
    'https://platform.adobe.io/data/foundation/flowservice/connections/54c22133-3a01-4d3b-8221-333a01bd3b03/explore?objectType=root' \
    -H 'Authorization: Bearer {ACCESS_TOKEN}' \
    -H 'x-api-key: {API_KEY}' \
    -H 'x-gw-ims-org-id: {IMS_ORG}' \
    -H 'x-sandbox-name: {SANDBOX_NAME}'

応答
正常に応答すると、データベースからテーブルの配列が返されます。 プラットフォームに取り込む表を探し、次の手順でプラットフォームの構造を調べる必要があるので、その path プロパティをメモしておきます。
[
    {
        "type": "table",
        "name": "test1.Mytable",
        "path": "test1.Mytable",
        "canPreview": true,
        "canFetchSchema": true
    },
    {
        "type": "table",
        "name": "test1.austin_demo",
        "path": "test1.austin_demo",
        "canPreview": true,
        "canFetchSchema": true
    }
]

テーブルの構造を検査する

データベースからテーブルの構造を検査するには、テーブルのパスをクエリパラメーターとして指定しながらGETリクエストを実行します。
API形式
GET /connections/{BASE_CONNECTION_ID}/explore?objectType=table&object={TABLE_PATH}

パラメーター
説明
{BASE_CONNECTION_ID}
データベース接続のID。
{TABLE_PATH}
テーブルのパス。
リクエスト
curl -X GET \
    'https://platform.adobe.io/data/foundation/flowservice/connections/54c22133-3a01-4d3b-8221-333a01bd3b03/explore?objectType=table&object=test1.Mytable' \
    -H 'Authorization: Bearer {ACCESS_TOKEN}' \
    -H 'x-api-key: {API_KEY}' \
    -H 'x-gw-ims-org-id: {IMS_ORG}' \
    -H 'x-sandbox-name: {SANDBOX_NAME}'

応答
正常な応答は、指定されたテーブルの構造を返します。 各テーブルの列に関する詳細は、 columns 配列の要素内にあります。
{
    "format": "flat",
    "schema": {
        "columns": [
            {
                "name": "TestID",
                "type": "string",
                "xdm": {
                    "type": "string"
                }
            },
            {
                "name": "Name",
                "type": "string",
                "xdm": {
                    "type": "string"
                }
            }
        ]
    }
}

次の手順

このチュートリアルに従って、データベースを調べ、プラットフォームに取り込むテーブルのパスを見つけ、その構造に関する情報を得ました。 次のチュートリアルでこの情報を使用して、データベースからデータを 収集し、プラットフォームに取り込むことができます