Show Menu
トピック×

Flow Service APIを使用してHubSpotコネクタを作成する

フローサービスは、Adobe Experience Platform内の様々な異なるソースから顧客データを収集し、一元管理するために使用します。 このサービスは、ユーザーインターフェイスとRESTful APIを提供し、サポートされるすべてのソースを接続できます。
このチュートリアルでは、Flow Service APIを使用して、Experience PlatformをHubSpotに接続する手順を順を追って説明します。

はじめに

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

必要な資格情報の収集

フローサービスがHubSpotと接続するには、次の接続プロパティを指定する必要があります。
Credential
説明
clientId
HubSpotアプリケーションに関連付けられているクライアントID。
clientSecret
HubSpotアプリケーションに関連付けられているクライアントシークレット。
accessToken
OAuth統合を最初に認証する際に取得されるアクセストークン。
refreshToken
OAuth統合を最初に認証する際に取得される更新トークン。
使い始める前に、このHubSpotドキュメントを参照して ください

サンプル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のすべてのリソース(Flow Serviceに属するリソースを含む)は、特定の仮想サンドボックスに分離されています。 プラットフォームAPIへのすべてのリクエストには、操作が実行されるサンドボックスの名前を指定するヘッダーが必要です。
  • x-sandbox-name: {SANDBOX_NAME}
ペイロード(POST、PUT、PATCH)を含むすべての要求には、追加のメディアタイプヘッダーが必要です。
  • Content-Type: application/json

接続仕様の検索

HubSpot接続を作成するには、一連のHubSpot接続仕様がフローサービス内に存在する必要があります。 プラットフォームをHubSpotに接続する最初の手順は、これらの仕様を取得することです。
API形式
使用可能な各ソースには、認証要件などのコネクタプロパティを記述するための固有の接続仕様のセットがあります。 GET要求をエンドポイントに送信すると、使用可能なすべてのソースの接続指定が返され /connectionSpecs ます。 また、クエリを含めて、HubSpot専用 property=name=="hubspot" の情報を取得することもできます。
GET /connectionSpecs
GET /connectionSpecs?property=name=="hubspot"

リクエスト
次のリクエストは、HubSpotの接続仕様を取得します。
curl -X GET \
    'https://platform.adobe.io/data/foundation/flowservice/connectionSpecs?property=name=="hubspot"' \
    -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}'

応答
正常な応答は、一意の識別子( id )を含むHubSpotの接続仕様を返します。 このIDは、次の手順でAPIの接続を作成する際に必要です。
{
    "items": [
        {
            "id": "cc6a4487-9e91-433e-a3a3-9cf6626c1806",
            "name": "hubspot",
            "providerId": "0ed90a81-07f4-4586-8190-b40eccef1c5a",
            "version": "1.0",
            "authSpec": [
                {
                    "name": "Basic Authentication",
                    "spec": {
                        "$schema": "http://json-schema.org/draft-07/schema#",
                        "type": "object",
                        "description": "defines auth params required for connecting to HubSpot",
                        "properties": {
                            "clientId": {
                                "type": "string",
                                "description": "The client ID associated with your HubSpot application."
                            },
                            "clientSecret": {
                                "type": "string",
                                "description": "The client secret associated with your HubSpot application.",
                                "format": "password"
                            },
                            "accessToken": {
                                "type": "string",
                                "description": "The access token obtained when initially authenticating your OAuth integration.",
                                "format": "password"
                            },
                            "refreshToken": {
                                "type": "string",
                                "description": "The refresh token obtained when initially authenticating your OAuth integration.",
                                "format": "password"
                            }
                        },
                        "required": [
                            "clientId",
                            "clientSecret",
                            "accessToken",
                            "refreshToken"
                        ]
                    }
                }
            ],
        }
    ]
}

API用の接続の作成

APIの接続は、ソースを指定し、そのソースの資格情報を含みます。 異なるデータを取り込むために複数のソースコネクタを作成するのに使用できるため、HubSpotアカウントごとに必要なAPIへの接続は1つだけです。
API形式
POST /connections

リクエスト
curl -X POST \
    'https://platform.adobe.io/data/foundation/flowservice/connections' \
    -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}' \
    -H 'Content-Type: application/json' \
    -d '{
        "name": "connection for hubspot",
        "description": "connection for hubspot",
        "auth": {
            "specName": "Basic Authentication",
            "params": {
                "clientId": "{CLIENT_ID}",
                "clientSecret": "{CLIENT_SECRET}",
                "accessToken": "{ACCESS_TOKEN}",
                "refreshToken": "{REFRESH_TOKEN}"
            }
        },
        "connectionSpec": {
            "id": "cc6a4487-9e91-433e-a3a3-9cf6626c1806",
            "version": "1.0"
        }
    }

プロパティ
説明
auth.params.clientId
HubSpotアプリケーションに関連付けられているクライアントID。
auth.params.clientSecret
HubSpotアプリケーションに関連付けられているクライアントシークレット。
auth.params.accessToken
OAuth統合を最初に認証する際に取得されるアクセストークン。
auth.params.refreshToken
OAuth統合を最初に認証する際に取得される更新トークン。
応答
正常な応答は、新たに作成されたAPI用の接続の詳細(一意の識別子( id )を含む)を返します。 このIDは、次のチュートリアルでデータを調べるために必要です。
{
    "id": "2eb9c78b-e8b8-4400-b9c7-8be8b86400b2",
    "etag": "\"05026cf5-0000-0200-0000-5e4c42920000\""
}

このチュートリアルに従うことで、Flow Service APIを使用してHubSpot接続を作成し、接続の一意のID値を取得しました。 Flow Service APIを使用してCRMシステムを 調査する方法について学習する際に、次のチュートリアルでこの接続IDを使用できます