フローサービスAPIを使用したGoogle PubSubソース接続の作成

メモ

Google PubSubコネクタはベータ版です。 ベータラベルのコネクタの使用について詳しくは、「ソースの概要」を参照してください。

このチュートリアルでは、Flow Service APIを使用してGoogle PubSub(以下「PubSub」と呼びます)をExperience Platformに接続する手順について説明します。

はじめに

このガイドでは、Adobe Experience Platform の次のコンポーネントに関する作業を理解している必要があります。

  • ソース:Experience Platformを使用すると、様々なソースからデータを取り込みながら、Platformサービスを使用して、受信データの構造化、ラベル付け、拡張をおこなうことができます。
  • サンドボックス:Experience Platform は、単一の Platform インスタンスを別々の仮想環境に分割して、デジタルエクスペリエンスアプリケーションの開発と発展を支援する仮想サンドボックスを提供します。

以下の節では、Flow Service APIを使用してPubSubをPlatformに正しく接続するために知っておく必要がある追加情報を示します。

必要な資格情報の収集

Flow ServiceがPubSubに接続するには、次の接続プロパティの値を指定する必要があります。

資格情報 説明
projectId PubSubの認証に必要なプロジェクトID。
credentials PubSubの認証に必要な資格情報またはキー。
connectionSpec.id 接続仕様は、ベース接続とソースターゲット接続の作成に関連する認証仕様を含む、ソースのコネクタプロパティを返します。 PubSub接続仕様IDは次のとおりです。70116022-a743-464a-bbfe-e226a7f8210c.

これらの値について詳しくは、このPubSub 認証ドキュメントを参照してください。 サービスアカウントベースの認証を使用するには、このPubSub サービスアカウントの作成に関するガイドを参照して、資格情報の生成手順を確認してください。

ヒント

サービスアカウントベースの認証を使用している場合、資格情報をコピー&ペーストする際に、サービスアカウントへの十分なユーザーアクセス権が付与され、JSONに余分な空白がないことを確認します。

Platform APIの使用

Platform APIを正常に呼び出す方法について詳しくは、Platform APIの使用の手引きを参照してください。

ベース接続を作成する

ソース接続を作成する最初の手順は、PubSubソースを認証し、ベース接続IDを生成することです。 ベース接続IDを使用すると、ソース内からファイルを参照およびナビゲートし、取り込む特定の項目(データのタイプや形式に関する情報を含む)を特定できます。

ベースPOSTIDを作成するには、リクエストパラメーターの一部としてPubSub認証資格情報を指定しながら、/connectionsエンドポイントに接続リクエストを実行します。

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": "Google PubSub connection",
        "description": "Google PubSub connection",
        "auth": {
            "specName": "Google PubSub authentication credentials",
            "params": {
                "projectId": "{PROJECT_ID}",
                "credentials": "{CREDENTIALS}"
            }
        },
        "connectionSpec": {
            "id": "70116022-a743-464a-bbfe-e226a7f8210c",
            "version": "1.0"
        }
    }'
プロパティ 説明
auth.params.projectId PubSubの認証に必要なプロジェクトID。
auth.params.credentials PubSubの認証に必要な資格情報またはキー。
connectionSpec.id PubSub接続仕様ID:70116022-a743-464a-bbfe-e226a7f8210c.

応答

正常な応答は、新しく作成された接続の詳細(一意の識別子(id)を含む)を返します。 このベース接続IDは、次の手順でソース接続を作成する際に必要になります。

{
    "id": "4cb0c374-d3bb-4557-b139-5712880adc55",
    "etag": "\"6507cfd8-0000-0200-0000-5e18fc600000\""
}

ソース接続の作成

ソース接続は、データの取得元となる外部ソースへの接続を作成し、管理します。 ソース接続は、データソース、データ形式、データフローの作成に必要なソース接続IDなどの情報で構成されます。 ソース接続インスタンスは、テナントとIMS組織に固有です。

ソース接続を作成するには、Flow Service APIの/sourceConnectionsエンドポイントにPOSTリクエストを送信します。

API 形式

POST /sourceConnections

リクエスト

curl -X POST \
    'https://platform.adobe.io/data/foundation/flowservice/sourceConnections' \
    -H 'authorization: Bearer {ACCESS_TOKEN}' \
    -H 'content-type: application/json' \
    -H 'x-api-key: {API_KEY}' \
    -H 'x-gw-ims-org-id: {IMS_Org}' \
    -H 'x-sandbox-name: {SANDBOX_NAME}' \
    -d '{
        "name": "Google PubSub source connection",
        "description": "A source connection for Google PubSub",
        "baseConnectionId": "4cb0c374-d3bb-4557-b139-5712880adc55",
        "connectionSpec": {
            "id": "70116022-a743-464a-bbfe-e226a7f8210c",
            "version": "1.0"
        },
        "data": {
            "format": "json"
        },
        "params": {
            "topicId": "{TOPIC_ID}",
            "subscriptionId": "{SUBSCRIPTION_ID}",
            "dataType": "raw"
        }
    }'
プロパティ 説明
name ソース接続の名前。 ソース接続の情報を検索する際に、ソース接続の名前がわかりやすい名前になっていることを確認します。
description ソース接続に関する詳細情報を含めるために指定できるオプションの値です。
baseConnectionId 前の手順で生成されたPubSubソースのベース接続ID。
connectionSpec.id PubSubの固定接続仕様ID。 このIDは、です。70116022-a743-464a-bbfe-e226a7f8210c
data.format 取り込むPubSubデータの形式。 現在、サポートされているデータ形式はjsonのみです。
params.topicId トピックIDは、パブリッシャーから送信されるメッセージに固有の名前付きリソースを定義します
params.subscriptionId 購読IDは、購読アプリケーションに配信される単一の特定のトピックからのメッセージストリームを表す、特定の名前付きリソースを定義します。
params.dataType このパラメーターは、取り込まれるデータのタイプを定義します。 次のようなデータタイプがサポートされています。rawxdmが表示されます。

応答

正常な応答は、新しく作成されたソース接続の一意の識別子(id)を返します。 このIDは、次のチュートリアルでデータフローを作成する際に必要になります。

{
    "id": "e96d6135-4b50-446e-922c-6dd66672b6b2",
    "etag": "\"66013508-0000-0200-0000-5f6e2ae70000\""
}

次の手順

このチュートリアルでは、Flow Service APIを使用してPubSubソース接続を作成しました。 次のチュートリアルでこのソース接続IDを使用して、 Flow Service API🔗を使用してストリーミングデータフローを作成できます。

このページ