Beta

為以下專案建立來源連線和資料流: Pendo 使用流量服務API

注意

此 Pendo 來源為測試版。 請閱讀 來源概觀 以取得有關使用測試版標籤來源的詳細資訊。

以下教學課程將逐步引導您完成建立來源連線和資料流的步驟,以便您帶入 Pendo 使用將事件資料匯入Adobe Experience Platform Flow Service API.

快速入門

本指南需要您實際瞭解下列Experience Platform元件:

  • 來源:Experience Platform可讓您從各種來源擷取資料,同時能夠使用來建構、加標籤及增強傳入資料 Platform 服務。
  • 沙箱:Experience Platform提供的虛擬沙箱可將單一Platform執行個體分割成個別的虛擬環境,以利開發及改進數位體驗應用程式。

Connect Pendo 至平台,使用 Flow Service API

以下概述建立來源連線和資料流所需的步驟,以帶入 Pendo 要Experience Platform的事件資料。

建立來源連線

向發出POST要求以建立來源連線 Flow Service API,同時提供來源的連線規格ID、名稱和說明等詳細資訊,以及資料的格式。

API格式

POST /sourceConnections

要求

以下請求會為建立來源連線 Pendo:

curl -X POST \
  'https://platform.adobe.io/data/foundation/flowservice/sourceConnections' \
  -H 'Authorization: Bearer {ACCESS_TOKEN}' \
  -H 'x-api-key: {API_KEY}' \
  -H 'x-gw-ims-org-id: {ORG_ID}' \
  -H 'x-sandbox-name: {SANDBOX_NAME}' \
  -H 'Content-Type: application/json' \
  -d '{
      "name": "Streaming Source Connection for Pendo",
      "providerId": "521eee4d-8cbe-4906-bb48-fb6bd4450033",
      "description": "Streaming Source Connection for Pendo",
      "connectionSpec": {
          "id": "6ff5654f-19d5-427d-bd3e-c0ebc802389a",
          "version": "1.0"
      },
      "data": {
          "format": "json"
      }
    }'
屬性 說明
name 來源連線的名稱。 確保來源連線的名稱是描述性的,因為您可以使用此名稱來查閱來源連線的資訊。
description 您可以納入的選擇性值,可提供來源連線的詳細資訊。
connectionSpec.id 與您的來源對應的連線規格ID。
data.format 的格式 Pendo 您要擷取的資料。 目前唯一支援的資料格式為 json.

回應

成功的回應會傳回唯一識別碼(id)。 此ID在後續步驟中是建立資料流的必要專案。

{
    "id": "76b968ff-3ff0-4e98-98bb-f3205d4d370c",
    "etag": "\"0301c198-0000-0200-0000-63f32ba50000\""
}

建立目標XDM結構描述

為了在Platform中使用來源資料,必須建立目標結構描述,以根據您的需求來建構來源資料。 然後,目標結構描述會用於建立包含來源資料的Platform資料集。

可透過對以下專案執行POST請求來建立目標XDM結構描述: 結構描述登入API.

如需建立目標XDM結構的詳細步驟,請參閱以下教學課程: 使用API建立結構描述.

建立目標資料集

您可以透過對「 」執行POST請求來建立目標資料集 目錄服務API,在裝載中提供目標結構描述的ID。

如需建立目標資料集的詳細步驟,請參閱以下教學課程: 使用API建立資料集.

建立目標連線

目標連線代表與要儲存所擷取資料的目的地之間的連線。 若要建立目標連線,您必須提供對應至資料湖的固定連線規格ID。 此ID為: c604ff05-7f1a-43c0-8e18-33bf874cb11c.

您現在擁有目標結構描述、目標資料集和到資料湖的連線規格ID的唯一識別碼。 使用這些識別碼,您可以使用 Flow Service 指定將包含傳入來源資料之資料集的API。

API格式

POST /targetConnections

要求

以下請求會建立目標連線 Pendo:

curl -X POST \
  'https://platform.adobe.io/data/foundation/flowservice/targetConnections' \
  -H 'Authorization: Bearer {ACCESS_TOKEN}' \
  -H 'x-api-key: {API_KEY}' \
  -H 'x-gw-ims-org-id: {ORG_ID}' \
  -H 'x-sandbox-name: {SANDBOX_NAME}' \
  -H 'Content-Type: application/json' \
  -d '{
      "name": "Streaming Target Connection for Pendo",
      "description": "Streaming Target Connection for Pendo",
      "connectionSpec": {
          "id": "c604ff05-7f1a-43c0-8e18-33bf874cb11c",
          "version": "1.0"
      },
      "data": {
          "format": "json",
          "schema": {
              "id": "https://ns.adobe.com/extconndev/schemas/b48de0b204046e65a4c50232e7946401946b4c519fd7c172",
              "version": "application/vnd.adobe.xed-full+json;version=1"
          }
      },
      "params": {
          "dataSetId": "63dca52231a6031c07280614"
      }
  }'
屬性 說明
name 目標連線的名稱。 確保目標連線的名稱是描述性的,因為您可以使用此名稱來查詢目標連線的資訊。
description 您可以納入的選擇性值,可提供目標連線的詳細資訊。
connectionSpec.id 對應至Data Lake的連線規格ID。 此固定ID為: c604ff05-7f1a-43c0-8e18-33bf874cb11c.
data.format 的格式 Pendo 您要擷取的資料。
params.dataSetId 在上一步中擷取的目標資料集ID。

回應

成功回應會傳回新目標連線的唯一識別碼(id)。 此ID在後續步驟中是必要的。

{
    "id": "c63978c1-df7e-4611-aa32-3657eab5704b",
    "etag": "\"7f0045f1-0000-0200-0000-63f32c9d0000\""
}

建立對應

為了將來源資料內嵌到目標資料集中,必須先將其對應到目標資料集所遵守的目標結構描述。 這是透過向執行POST請求來達成 Data Prep API 要求裝載中定義資料對應。

API格式

POST /conversion/mappingSets

要求

curl -X POST \
  'https://platform.adobe.io/data/foundation/conversion/mappingSets' \
  -H 'Authorization: Bearer {ACCESS_TOKEN}' \
  -H 'x-api-key: {API_KEY}' \
  -H 'x-gw-ims-org-id: {ORG_ID}' \
  -H 'x-sandbox-name: {SANDBOX_NAME}' \
  -H 'Content-Type: application/json' \
  -d '{
      "outputSchema": {
          "schemaRef": {
              "id": "https://ns.adobe.com/{TENANT_ID}/schemas/945546112b746524bfd9f1264b26c2b7d8e7f5b7fadb953a",
              "contentType": "application/vnd.adobe.xed-full+json;version=1"
          }
      },
    "mappings": [
        {
            "destinationXdmPath": "_extconndev.accountid",
            "sourceAttribute": "accountId",
            "identity": false,
            "version": 0
        },
        {
            "destinationXdmPath": "_extconndev.uniqueid",
            "sourceAttribute": "uniqueId",
            "identity": false,
            "version": 0
        },
        {
            "destinationXdmPath": "_extconndev.name1",
            "sourceAttribute": "properties.guideProperties.name",
            "identity": false,
            "version": 0
        },
        {
            "destinationXdmPath": "_extconndev.timestamp1",
            "sourceAttribute": "timestamp",
            "identity": false,
            "version": 0
        },
        {
            "destinationXdmPath": "_extconndev.visitorid",
            "sourceAttribute": "visitorId",
            "identity": false,
            "version": 0
        }
    ]
  }'
屬性 說明
outputSchema.schemaRef.id 的ID 目標XDM結構描述 已在先前步驟中產生。
mappings.sourceType 正在對應的來源屬性型別。
mappings.source 需要對映至目的地XDM路徑的來源屬性。
mappings.destination 來源屬性對應到的目的地XDM路徑。

回應

成功回應會傳回新建立對應的詳細資料,包括其唯一識別碼(id)。 在後續步驟中需要此值,才能建立資料流。

{
    "id": "a126ae1a1d134c4b82bd00c2d01a039e",
    "version": 0,
    "createdDate": 1676881164541,
    "modifiedDate": 1676881164541,
    "createdBy": "{CREATED_BY}",
    "modifiedBy": "{MODIFIED_BY}"
}

建立流程

從以下來源取得資料的最後一步 Pendo 對Platform而言,就是建立資料流。 到現在為止,您已準備下列必要值:

資料流負責從來源排程及收集資料。 您可以執行POST要求,同時在裝載中提供先前提及的值,藉此建立資料流。

API格式

POST /flows

要求

curl -X POST \
  'https://platform.adobe.io/data/foundation/flowservice/flows' \
  -H 'x-api-key: {API_KEY}' \
  -H 'x-gw-ims-org-id: {ORG_ID}' \
  -H 'x-sandbox-name: {SANDBOX_NAME}' \
  -H 'Content-Type: application/json' \
  -d '{
      "name": "Streaming Dataflow for Pendo",
      "description": "Streaming Dataflow for Pendo",
      "flowSpec": {
          "id": "e77fde5a-22a8-11ed-861d-0242ac120002",
          "version": "1.0"
      },
      "sourceConnectionIds": [
          "339d60a5-9ff6-4eba-8197-e8887eeb3c08"
      ],
      "targetConnectionIds": [
          "df7c660e-3484-463b-b01a-1835e9b04ac9"
      ],
      "transformations": [
      {
        "name": "Mapping",
        "params": {
          "mappingId": "bae11501021646e58cecc1182451af22",
          "mappingVersion": 0
        }
      }
    ]
  }'
屬性 說明
name 資料流的名稱。 確保資料流的名稱是描述性的,因為您可以使用此名稱來查閱資料流上的資訊。
description 您可以納入的選用值,可提供資料流的詳細資訊。
flowSpec.id 建立資料流所需的流量規格ID。 此固定ID為: e77fde5a-22a8-11ed-861d-0242ac120002.
flowSpec.version 流程規格ID的對應版本。 此值預設為 1.0.
sourceConnectionIds 來源連線ID 已在先前步驟中產生。
targetConnectionIds 目標連線ID 已在先前步驟中產生。
transformations 此屬性包含套用至您的資料所需的各種轉換。 將非XDM相容的資料引進Platform時,需要此屬性。
transformations.name 指定給轉換的名稱。
transformations.params.mappingId 對應ID 已在先前步驟中產生。
transformations.params.mappingVersion 對應ID的對應版本。 此值預設為 0.

回應

成功的回應會傳回ID (id)。 您可以使用此ID來監視、更新或刪除資料流。

{
    "id": "c341617b-e143-43d5-aff1-da02b3e028b6",
    "etag": "\"9c01173c-0000-0200-0000-63f32d7c0000\""
}

取得您的串流端點URL

建立資料流後,您現在可以擷取串流端點URL。 您將使用此端點URL將您的來源訂閱到webhook,允許您的來源與Experience Platform通訊。

GET若要擷取您的串流端點URL,請向 /flows 端點並提供資料流的ID。

API格式

GET /flows/{FLOW_ID}

要求

curl -X GET \
  'https://platform.adobe.io/data/foundation/flowservice/flows/4982698b-e6b3-48c2-8dcf-040e20121fd2' \
  -H 'Authorization: Bearer {ACCESS_TOKEN}' \
  -H 'x-api-key: {API_KEY}' \
  -H 'x-gw-ims-org-id: {ORG_ID}' \
  -H 'x-sandbox-name: {SANDBOX_NAME}'

回應

成功的回應會傳回資料流上的資訊,包括標示為 inletUrl. 請參閱 設定Webhook 頁面以取得所需的值。

{
    "items": [
        {
            "id": "d947e6a9-ea53-42c4-985c-c9379265491f",
            "createdAt": 1676875325841,
            "updatedAt": 1676875331938,
            "createdBy": "acme@AdobeID",
            "updatedBy": "acme@AdobeID",
            "createdClient": "{CREATED_CLIENT}",
            "updatedClient": "{UPDATED_CLIENT}",
            "sandboxId": "{SANDBOX_ID}",
            "sandboxName": "{SANDBOX_NAME}",
            "imsOrgId": "{ORG_ID}",
            "name": "Streaming Dataflow for Pendo",
            "description": "Streaming Dataflow for Pendo",
            "flowSpec": {
                "id": "e77fde5a-22a8-11ed-861d-0242ac120002",
                "version": "1.0"
            },
            "state": "enabled",
            "version": "\"9801a366-0000-0200-0000-63f2f92c0000\"",
            "etag": "\"9801a366-0000-0200-0000-63f2f92c0000\"",
            "sourceConnectionIds": [
                "339d60a5-9ff6-4eba-8197-e8887eeb3c08"
            ],
            "targetConnectionIds": [
                "df7c660e-3484-463b-b01a-1835e9b04ac9"
            ],
            "inheritedAttributes": {
                "properties": {
                    "isSourceFlow": true
                },
                "sourceConnections": [
                    {
                        "id": "339d60a5-9ff6-4eba-8197-e8887eeb3c08",
                        "connectionSpec": {
                            "id": "6ff5654f-19d5-427d-bd3e-c0ebc802389a",
                            "version": "1.0"
                        }
                    }
                ],
                "targetConnections": [
                    {
                        "id": "df7c660e-3484-463b-b01a-1835e9b04ac9",
                        "connectionSpec": {
                            "id": "c604ff05-7f1a-43c0-8e18-33bf874cb11c",
                            "version": "1.0"
                        }
                    }
                ]
            },
            "options": {
                "inletUrl": "https://dcs.adobedc.net/collection/e389c18dbc7f5de8b95df07b1b89d76ddd9b1e88d5423abc71b6ac9161491373"
            },
            "transformations": [
                {
                    "name": "Mapping",
                    "params": {
                        "mappingId": "bae11501021646e58cecc1182451af22",
                        "mappingVersion": 0
                    }
                }
            ],
            "runs": "/runs?property=flowId==4d90b316-1c9b-469d-935f-5a27d5deefdf",
            "providerRefId": "19d9fb14-9cb9-42a5-bb8b-23dc545e766a",
            "lastOperation": {
                "started": 0,
                "updated": 0,
                "operation": "enable"
            },
            "lastRunDetails": {
                "id": "d6972216-2332-41f6-8ed3-2ac82e6550b7",
                "state": "partialSuccess",
                "startedAtUTC": 1676862000000,
                "completedAtUTC": 1676867880000
            }
        }
    ]
}

附錄

下節提供您可以監視、更新和刪除資料流的步驟相關資訊。

監視資料流

建立資料流後,您可以監視透過它擷取的資料,以檢視有關資料流執行、完成狀態和錯誤的資訊。 如需完整的API範例,請閱讀以下指南: 使用API監控您的來源資料流.

更新您的資料流

透過向以下專案發出PATCH請求,更新資料流的詳細資訊,例如其名稱和說明,及其執行排程和相關聯的對應集 /flows 端點 Flow Service API,同時提供資料流的ID。 提出PATCH請求時,您必須提供資料流的 etagIf-Match 標頭。 如需完整的API範例,請閱讀以下指南: 使用API更新來源資料流

更新您的帳戶

透過對執行PATCH請求,更新來源帳戶的名稱、說明和認證 Flow Service API時,提供您的基本連線ID作為查詢引數。 提出PATCH請求時,您必須提供來源帳戶的唯一值 etagIf-Match 標頭。 如需完整的API範例,請閱讀以下指南: 使用API更新您的來源帳戶.

刪除您的資料流

透過對執行DELETE請求來刪除您的資料流 Flow Service API,同時提供您要作為查詢引數的一部分刪除的資料流的ID。 如需完整的API範例,請閱讀以下指南: 使用API刪除您的資料流.

刪除您的帳戶

透過對執行DELETE請求來刪除您的帳戶 Flow Service API,同時提供您要刪除之帳戶的基本連線ID。 如需完整的API範例,請閱讀以下指南: 使用API刪除您的來源帳戶.

本頁內容