Show Menu
主題×

使用 Flow Service API從協力廠商雲端儲存系統內嵌鑲木地板資料

Flow Service 用於收集和集中Adobe Experience Platform內不同來源的客戶資料。 該服務提供用戶介面和REST風格的API,所有支援的源都可從中連接。
本教學課程使 Flow Service 用API來引導您逐步從協力廠商雲端儲存系統擷取鑲木地板資料。

快速入門

本指南需要有效瞭解Adobe Experience Platform的下列元件:
  • 來源 : Experience Platform 允許從各種來源接收資料,同時提供使用服務構建、標籤和增強傳入資料的 Platform 能力。
  • 沙盒 : Experience Platform 提供虛擬沙盒,可將單一執行個體分 Platform 割為不同的虛擬環境,以協助開發和發展數位體驗應用程式。
以下各節提供您必須知道的其他資訊,以便使用 Flow Service API成功從協力廠商雲端儲存空間擷取鑲木地板資料。

讀取範例API呼叫

本教學課程提供範例API呼叫,以示範如何設定請求的格式。 這些包括路徑、必要標題和正確格式化的請求負載。 也提供API回應中傳回的範例JSON。 如需範例API呼叫檔案中所用慣例的詳細資訊,請參閱疑難排解指 南中有關如何讀取範例API呼叫的 Experience Platform 章節。

收集必要標題的值

若要呼叫API,您必 Platform 須先完成驗證教 學課程 。 完成驗證教學課程後,將提供所有 Experience Platform API呼叫中每個必要標題的值,如下所示:
  • 授權: 生產者 {ACCESS_TOKEN}
  • x-api-key: {API_KEY}
  • x-gw-ims-org-id: {IMS_ORG}
中的所有資 Experience Platform源(包括屬於這些資源 Flow Service)都隔離到特定的虛擬沙盒。 對API的所 Platform 有請求都需要一個標題,該標題會指定要在中執行的操作的沙盒名稱:
  • x-sandbox-name: {SANDBOX_NAME}
所有包含裝載(POST、PUT、PATCH)的請求都需要額外的媒體類型標題:
  • 內容類型: application/json

建立連線

若要使用API來收錄拼花 Platform 資料,您必須擁有您所存取之第三方雲端儲存來源的有效連線。 如果您尚未連接要使用的儲存,則可以通過以下教程建立一個:
取得並儲存連線的唯一識別碼( $id ),然後繼續本教學課程的下一步。

建立目標方案

為了使用源資料,還必須創 Platform建目標模式,以根據您的需要構建源資料。 然後,目標模式用於建立包含 Platform 源資料的資料集。
如果希望在中使用用戶介面 Experience Platform, 使用 Schema Editor Schema Editor教程將提供在Schema Editor中執行類似操作的逐步說明。
API格式
POST /schemaregistry/tenant/schemas

請求
以下示例請求建立了擴展XDM類的XDM Individual Profile 架構。
curl -X POST \
    'https://platform.adobe.io/data/foundation/schemaregistry/tenant/schemas' \
    -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 '{
    "type": "object",
    "title": "Sample Demo Profile XDM {{$guid}}",
    "description": "",
    "allOf": [
        {
            "$ref": "https://ns.adobe.com/xdm/context/profile"
        },
        {
            "$ref": "https://ns.adobe.com/xdm/context/profile-person-details"
        },
        {
            "$ref": "https://ns.adobe.com/xdm/context/profile-personal-details"
        },
        {
            "$ref": "https://ns.adobe.com/xdm/context/profile-work-details"
        },
        {
            "$ref": "https://ns.adobe.com/xdm/context/profile-subscriptions"
        },
        {
            "$ref": "https://ns.adobe.com/xdm/context/identitymap"
        }
    ],
    "meta:containerId": "tenant",
    "meta:resourceType": "schemas",
    "meta:xdmType": "object",
    "meta:class": "https://ns.adobe.com/xdm/context/profile"
}'

回應
成功的回應會傳回新建立之架構的詳細資料,包括其唯一識別碼( $id )。 在下一步驟中需要此ID才能建立來源連線。
{
    "$id": "https://ns.adobe.com/{TENANT_ID}/schemas/e15530faf88aeb52d9ca5c5671a059f44f1a42ea7f5fdb80",
    "meta:altId": "_{TENANT_ID}.schemas.e15530faf88aeb52d9ca5c5671a059f44f1a42ea7f5fdb80",
    "meta:resourceType": "schemas",
    "version": "1.0",
    "title": "Sample Demo Profile XDM 8d96a964-aad8-43c5-a73a-c8b9b1ccbfb1",
    "type": "object",
    "description": "",
    "allOf": [
        {
            "$ref": "https://ns.adobe.com/xdm/context/profile",
            "type": "object",
            "meta:xdmType": "object"
        },
        {
            "$ref": "https://ns.adobe.com/xdm/context/profile-person-details",
            "type": "object",
            "meta:xdmType": "object"
        },
        {
            "$ref": "https://ns.adobe.com/xdm/context/profile-personal-details",
            "type": "object",
            "meta:xdmType": "object"
        },
        {
            "$ref": "https://ns.adobe.com/xdm/context/profile-work-details",
            "type": "object",
            "meta:xdmType": "object"
        },
        {
            "$ref": "https://ns.adobe.com/xdm/context/profile-subscriptions",
            "type": "object",
            "meta:xdmType": "object"
        },
        {
            "$ref": "https://ns.adobe.com/xdm/context/identitymap",
            "type": "object",
            "meta:xdmType": "object"
        }
    ],
    "refs": [
        "https://ns.adobe.com/xdm/context/profile-person-details",
        "https://ns.adobe.com/xdm/context/profile-personal-details",
        "https://ns.adobe.com/xdm/context/profile",
        "https://ns.adobe.com/xdm/context/profile-subscriptions",
        "https://ns.adobe.com/xdm/context/identitymap",
        "https://ns.adobe.com/xdm/context/profile-work-details"
    ],
    "imsOrg": "{IMS_ORG}",
    "meta:extensible": false,
    "meta:abstract": false,
    "meta:extends": [
        "https://ns.adobe.com/xdm/context/profile-person-details",
        "https://ns.adobe.com/xdm/context/profile-personal-details",
        "https://ns.adobe.com/xdm/common/auditable",
        "https://ns.adobe.com/xdm/data/record",
        "https://ns.adobe.com/xdm/context/profile",
        "https://ns.adobe.com/xdm/context/profile-subscriptions",
        "https://ns.adobe.com/xdm/context/identitymap",
        "https://ns.adobe.com/xdm/context/profile-work-details"
    ],
    "meta:xdmType": "object",
    "meta:registryMetadata": {
        "repo:createdDate": 1584673864341,
        "repo:lastModifiedDate": 1584673864341,
        "xdm:createdClientId": "{CREATED_CLIENT_ID}",
        "xdm:lastModifiedClientId": "{MODIFIED_CLIENT_ID}",
        "xdm:createdUserId": "{CREATED_USER_ID}",
        "xdm:lastModifiedUserId": "{MODIFIED_USER_ID}",
        "eTag": "fa704f80da907c8f0f66f453ffcac3e52958687edbf55d71231dc5e1522193c4"
    },
    "meta:class": "https://ns.adobe.com/xdm/context/profile",
    "meta:containerId": "tenant",
    "meta:tenantNamespace": "_{TENANT_ID}"
}

建立源連接

在建立目標XDM架構後,現在可以使用API的POST請求來建立來源連 Flow Service 線。 源連接由API的連接、源資料格式和對在前一步驟中檢索的目標XDM模式的引用組成。
API格式
POST /sourceConnections

請求
curl -X POST \
    'http://platform.adobe.io/data/foundation/flowservice/sourceConnections' \
    -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": "Source Connection S3 {{$guid}}",
        "baseConnectionId": "5831c52c-c261-4945-b1c5-2cc261d945b2",
        "connectionSpec": {
            "id": "ecadc60c-7455-4d87-84dc-2a0e293d997b",
            "version": 1
        },
        "data": {
            "format": "parquet_xdm",
            "schema": {
                "id": "https://ns.adobe.com/{TENANT_ID}/schemas/e15530faf88aeb52d9ca5c5671a059f44f1a42ea7f5fdb80",
                "id": "",
                "version": "application/vnd.adobe.xed-full+json;version=1.0"
            }
        },
        "params": {
            "path": "partners-demo/samples",
            "recursive": "true"
        }
    }'

屬性
說明
baseConnectionId
代表您雲端儲存空間之API的連線。
data.schema.id
( $id )如果目標xdm模式在上一步中檢索到。
params.path
源檔案的路徑。
回應
成功的響應返回新建立的源連 id 接的唯一標識符()。 在後續步驟中建立目標連線時,請依需要儲存此值。
{
    "id": "73bc8911-505a-4e46-bc89-11505a6e466f",
    "etag": "\"c4004435-0000-0200-0000-5e7437d90000\""
}

建立資料集基礎連線

為了將外部資料嵌入 Platform,必須首 Experience Platform 先獲取資料集基礎連接。
要建立資料集基礎連接,請遵循資料集基礎連接教 程中介紹的步驟
請繼續遵循開發人員指南中所述的步驟,直到您建立資料集基本連線為止。 取得並儲存唯一識別碼( $id ),並繼續在下個步驟中,將它當做基本連線ID來建立目標連線。

建立目標資料集

目標資料集可以通過對目錄服務 API執行POST請求 ,提供裝載內目標方案的ID來建立。
API格式
POST /catalog/dataSets

請求
curl -X POST \
    'https://platform.adobe.io/data/foundation/catalog/dataSets?requestDataSource=true' \
    -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": "Leads Dataset {{$guid}}",
        "schemaRef": {
            "id": ""https://ns.adobe.com/{TENANT_ID}/schemas/e15530faf88aeb52d9ca5c5671a059f44f1a42ea7f5fdb80"",
            "contentType": "application/vnd.adobe.xed-full-notext+json; version=1"
        },
        "fileDescription": {
            "format": "parquet"
        }
    }'

屬性
說明
schemaRef.id
目標XDM架構的ID。
回應
成功的回應會傳回包含新建立資料集ID的陣列,格式為 "@/datasets/{DATASET_ID}" 。 資料集ID是唯讀、系統產生的字串,用於在API呼叫中參考資料集。 在後續步驟中,依需要儲存目標資料集ID以建立目標連線和資料流。
[
    "@/dataSets/5e7439b1ad55a618ad4c5102"
]

建立目標連接

您現在擁有資料集基本連線、目標架構和目標資料集的唯一識別碼。 使用這些識別碼,您可以使用 Flow Service API建立目標連線,以指定將包含傳入來源資料的資料集。
API格式
POST /targetConnections

請求
curl -X POST \
    'http://platform.adobe.io/data/foundation/flowservice/targetConnections' \
    -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 '{
        "baseConnectionId": "291257e3-c560-4e07-9257-e3c5606e07d1",
        "connectionSpec": {
            "id":"c604ff05-7f1a-43c0-8e18-33bf874cb11c",
            "version": "1.0"
        },
        "name": "Target Connection {{$guid}}",
        "data": {
            "format": "parquet_xdm",
            "schema": {
                "id": ""https://ns.adobe.com/{TENANT_ID}/schemas/e15530faf88aeb52d9ca5c5671a059f44f1a42ea7f5fdb80"",
                "version": "application/vnd.adobe.xed-full+json;version=1.0"
            }
        },
        "params": {
            "dataSetId": "5e7439b1ad55a618ad4c5102"
        }
    }'

屬性
說明
baseConnectionId
資料集基礎連線的ID。
data.schema.id
$id 標XDM模式的。
params.dataSetId
目標資料集的ID。
connectionSpec.id
雲端儲存空間的連線規格ID。
回應
成功的回應會傳回新目標連線的唯一識別碼( id )。 在後續步驟中,視需要儲存此值。
{
    "id": "9b3abc95-f2e9-47c1-babc-95f2e927c1ec",
    "etag": "\"7501936b-0000-0200-0000-5e743bcc0000\""
}

建立資料流

從協力廠商雲端儲存空間擷取拼花式資料的最後一個步驟是建立資料流。 目前,您已準備好下列必要值:
資料流負責調度和收集源中的資料。 您可以通過執行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: {IMS_ORG}' \
    -H 'x-sandbox-name: {SANDBOX_NAME}' \
    -H 'Content-Type: application/json' \
    -d '{
        "name": "Demo Parquet Ingestion Flow {{$guid}}",
        "flowSpec": {
            "id": "9753525b-82c7-4dce-8a9b-5ccfce2b9876",
            "version": "1.0"
        },
        "sourceConnectionIds": [
            "73bc8911-505a-4e46-bc89-11505a6e466f"
        ],
        "targetConnectionIds": [
            "9b3abc95-f2e9-47c1-babc-95f2e927c1ec"
        ],
        "scheduleParams": {
            "startTime": {{$timestamp}},
            "frequency": "minute",
            "interval": 1000,
            "backfill": true
        }
    }'

屬性
說明
sourceConnectionIds
在先前步驟中擷取的來源連線ID。
targetConnectionIds
在先前步驟中擷取的目標連線ID。
回應
成功的響應返回新創 id 建的資料流的ID()。
{
    "id": "89ff50ef-b082-426e-bf50-efb082d26e78",
    "etag": "\"890070b8-0000-0200-0000-5e743c040000\""
}

後續步驟

在本教學課程中,您已建立來源連接器,以依計畫從協力廠商雲端儲存系統收集鑲木地板資料。 現在,下游服務(例如和)可 Platform 以使用傳入 Real-time Customer Profile 的資料 Data Science Workspace。 如需詳細資訊,請參閱下列檔案: