匯出不Experience Platform的檔案時,請使用增強型檔案匯出功能來存取增強的自訂功能:
以下列出的六個雲端儲存卡支援此功能:
本文會說明使用 流程服務API 將合格的設定檔從Adobe Experience Platform匯出至上方連結的其中一個雲端儲存位置。
您也可以使用Experience Platform使用者介面,將設定檔匯出至雲端儲存空間目的地。 閱讀 啟用檔案型目的地教學課程 以取得詳細資訊。
本指南需要您深入了解下列 Adobe Experience Platform 元件:
以下章節提供在Platform中以檔案為基礎的目的地啟用資料所需瞭解的其他資訊。
若要匯出設定檔,您需要 管理目的地, 檢視目的地、和 啟用目的地 存取控制許可權. 閱讀 存取控制總覽 或聯絡您的產品管理員以取得必要許可權。
要匯出 身分,您需要 檢視身分圖表 存取控制許可權.
本教學課程提供範例API呼叫,示範如何格式化您的請求。 這些包括路徑、必要的標頭和正確格式化的請求承載。 此外,也提供 API 回應中傳回的範例 JSON。 如需文件中用於範例 API 呼叫的慣例相關資訊,請參閱 疑難排解指南中的如何讀取範例 API 呼叫Experience Platform一節。
為了呼叫 Platform API,您必須先完成 Experience Platform驗證教學課程. 完成驗證教學課程會提供所有 Experience Platform API 呼叫中每個必要標頭的值,如下所示:
{ACCESS_TOKEN}
{API_KEY}
{ORG_ID}
中的資源 Experience Platform 可隔離至特定的虛擬沙箱。 在要求給 Platform API中,您可以指定要執行作業的沙箱名稱和ID。 這些是選用引數。
{SANDBOX_NAME}
如需中沙箱的詳細資訊 Experience Platform,請參閱 沙箱概述檔案.
包含裝載(POST、PUT、PATCH)的所有請求都需要額外的媒體型別標頭:
application/json
在本教學課程中,您可以找到所有API作業的隨附參考檔案。 請參閱 Adobe Developer網站上的「流程服務 — 目的地API」檔案. 我們建議您同時使用本教學課程和API參考檔案。
如需在此API教學課程中遇到的術語說明,請參閱 字彙表區段 API參考檔案的底稿。
在開始匯出設定檔的工作流程之前,請先識別您要將對象匯出至的目的地之連線規格和流程規格ID。 請參考下表。
目的地 | 連線規格 | 流量規格 |
---|---|---|
Amazon S3 | 4fce964d-3f37-408f-9778-e597338a21ee |
1a0514a6-33d4-4c7f-aff8-594799c47549 |
Azure Blob 儲存體 | 6d6b59bf-fb58-4107-9064-4d246c0e5bb2 |
752d422f-b16f-4f0d-b1c6-26e448e3b388 |
Azure Data Lake Gen 2(ADLS Gen2) | be2c3209-53bc-47e7-ab25-145db8b873e1 |
17be2013-2549-41ce-96e7-a70363bec293 |
資料登陸區(DLZ) | 10440537-2a7b-4583-ac39-ed38d4b848e8 |
cd2fc47e-e838-4f38-a581-8fff2f99b63a |
Google雲端儲存空間 | c5d93acb-ea8b-4b14-8f53-02138444ae99 |
585c15c4-6cbf-4126-8f87-e26bff78b657 |
SFTP | 36965a81-b1c6-401b-99f8-22508f1e6a26 |
fd36aaa4-bf2b-43fb-9387-43785eeeb799 |
在本教學課程的後續步驟中,您需要這些ID來建構各種流量服務實體。 您還需要參照連線規格本身的零件來設定特定圖元,以便從「流程服務API」擷取「連線規格」。 請參閱以下範例,擷取表格中所有目的地的連線規格:
要求
curl --location --request GET 'https://platform.adobe.io/data/foundation/flowservice/connectionSpecs/4fce964d-3f37-408f-9778-e597338a21ee' \
--header 'accept: application/json' \
--header 'x-api-key: {API_KEY}' \
--header 'x-gw-ims-org-id: {ORG_ID}' \
--header 'x-sandbox-name: {SANDBOX_NAME}' \
--header 'Authorization: Bearer {ACCESS_TOKEN}'
回應
{
"items": [
{
"id": "4fce964d-3f37-408f-9778-e597338a21ee",
"name": "Amazon S3",
"providerId": "14e34fac-d307-11e9-bb65-2a2ae2dbcce4",
"version": "1.0",
//...
要求
curl --location --request GET 'https://platform.adobe.io/data/foundation/flowservice/connectionSpecs/6d6b59bf-fb58-4107-9064-4d246c0e5bb2' \
--header 'accept: application/json' \
--header 'x-api-key: {API_KEY}' \
--header 'x-gw-ims-org-id: {ORG_ID}' \
--header 'x-sandbox-name: {SANDBOX_NAME}' \
--header 'Authorization: Bearer {ACCESS_TOKEN}'
回應
{
"items": [
{
"id": "6d6b59bf-fb58-4107-9064-4d246c0e5bb2",
"name": "Azure Blob Storage",
"providerId": "14e34fac-d307-11e9-bb65-2a2ae2dbcce4",
"version": "1.0",
//...
要求
curl --location --request GET 'https://platform.adobe.io/data/foundation/flowservice/connectionSpecs/be2c3209-53bc-47e7-ab25-145db8b873e1' \
--header 'accept: application/json' \
--header 'x-api-key: {API_KEY}' \
--header 'x-gw-ims-org-id: {ORG_ID}' \
--header 'x-sandbox-name: {SANDBOX_NAME}' \
--header 'Authorization: Bearer {ACCESS_TOKEN}'
回應
{
"items": [
{
"id": "be2c3209-53bc-47e7-ab25-145db8b873e1",
"name": "Azure Data Lake Gen2",
"providerId": "14e34fac-d307-11e9-bb65-2a2ae2dbcce4",
"version": "1.0",
//...
要求
curl --location --request GET 'https://platform.adobe.io/data/foundation/flowservice/connectionSpecs/10440537-2a7b-4583-ac39-ed38d4b848e8' \
--header 'accept: application/json' \
--header 'x-api-key: {API_KEY}' \
--header 'x-gw-ims-org-id: {ORG_ID}' \
--header 'x-sandbox-name: {SANDBOX_NAME}' \
--header 'Authorization: Bearer {ACCESS_TOKEN}'
回應
{
"items": [
{
"id": "10440537-2a7b-4583-ac39-ed38d4b848e8",
"name": "Data Landing Zone",
"providerId": "14e34fac-d307-11e9-bb65-2a2ae2dbcce4",
"version": "1.0",
//...
要求
curl --location --request GET 'https://platform.adobe.io/data/foundation/flowservice/connectionSpecs/c5d93acb-ea8b-4b14-8f53-02138444ae99' \
--header 'accept: application/json' \
--header 'x-api-key: {API_KEY}' \
--header 'x-gw-ims-org-id: {ORG_ID}' \
--header 'x-sandbox-name: {SANDBOX_NAME}' \
--header 'Authorization: Bearer {ACCESS_TOKEN}'
回應
{
"items": [
{
"id": "c5d93acb-ea8b-4b14-8f53-02138444ae99",
"name": "Google Cloud Storage",
"providerId": "14e34fac-d307-11e9-bb65-2a2ae2dbcce4",
"version": "1.0",
//...
要求
curl --location --request GET 'https://platform.adobe.io/data/foundation/flowservice/connectionSpecs/36965a81-b1c6-401b-99f8-22508f1e6a26' \
--header 'accept: application/json' \
--header 'x-api-key: {API_KEY}' \
--header 'x-gw-ims-org-id: {ORG_ID}' \
--header 'x-sandbox-name: {SANDBOX_NAME}' \
--header 'Authorization: Bearer {ACCESS_TOKEN}'
回應
{
"items": [
{
"id": "36965a81-b1c6-401b-99f8-22508f1e6a26",
"name": "SFTP",
"providerId": "14e34fac-d307-11e9-bb65-2a2ae2dbcce4",
"version": "1.0",
//...
請依照下列步驟,設定將對象匯出資料流至雲端儲存空間目的地。 對於某些步驟,請求和回應會因不同的雲端儲存空間目的地而異。 在這些情況下,請使用頁面上的索引標籤,擷取您想要連線並匯出受眾的目標的特定請求和回應。 請務必使用正確的 connection spec
和 flow spec
,以取得您正在設定的目的地。
決定要將對象匯出到哪個目的地後,您需要建立來源連線。 此 來源連線 代表與內部的連線 Experience Platform設定檔存放區.
要求
請注意請求範例中反白顯示內嵌註解的行,這些註解會提供額外資訊。 將請求複製貼上您選擇的終端機時,移除內嵌註解。
curl --location --request POST 'https://platform.adobe.io/data/foundation/flowservice/sourceConnections' \
--header 'Authorization: Bearer {ACCESS_TOKEN}' \
--header 'x-api-key: {API_KEY}' \
--header 'x-gw-ims-org-id: {ORG_ID}' \
--header 'x-sandbox-name: {SANDBOX_NAME}' \
--header 'Content-Type: application/json' \
--data-raw '{
"name":"Connect to Profile Store",
"description":"Optional",
"connectionSpec":{
"id":"8a9c3494-9708-43d7-ae3f-cda01e5030e1", // this connection spec ID is always the same for Source Connections
"version":"1.0"
}
}'
回應
{
"id": "900df191-b983-45cd-90d5-4c7a0326d650",
"etag": "\"0500ebe1-0000-0200-0000-63e28d060000\""
}
成功的回應會傳回ID (id
)的來源連線,以及 etag
. 記下來源連線ID,因為稍後建立資料流時會需要它。
A 基礎連線 安全地儲存認證至您的目的地。 根據目的地型別,針對該目的地進行驗證所需的認證可能會有所不同。 若要尋找這些驗證引數,請先擷取 connection spec
區段中說明的所需目的地 選取匯出受眾的目的地 然後檢視 authSpec
回應。 請參考下列標籤 authSpec
所有支援目的地的屬性。
請注意醒目提示的行,其中含有內嵌註釋 connection spec 以下範例提供有關在何處尋找驗證引數的其他資訊 connection spec.
{
"items": [
{
"id": "4fce964d-3f37-408f-9778-e597338a21ee",
"name": "Amazon S3",
"providerId": "14e34fac-d307-11e9-bb65-2a2ae2dbcce4",
"version": "1.0",
"authSpec": [ // describes the authentication parameters
{
"name": "Access Key",
"type": "KeyBased",
"spec": {
"$schema": "http://json-schema.org/draft-07/schema#",
"description": "Defines auth params required for connecting to amazon-s3",
"type": "object",
"properties": {
"s3AccessKey": {
"description": "Access key id",
"type": "string",
"pattern": "^[A-Z2-7]{20}$"
},
"s3SecretKey": {
"description": "Secret access key for the user account",
"type": "string",
"format": "password",
"pattern": "^[A-Za-z0-9\/\\+]{40}$"
}
},
"required": [
"s3SecretKey",
"s3AccessKey"
]
}
}
],
//...
請注意醒目提示的行,其中含有內嵌註釋 connection spec 以下範例提供有關在何處尋找驗證引數的其他資訊 connection spec.
{
"items": [
{
"id": "6d6b59bf-fb58-4107-9064-4d246c0e5bb2",
"name": "Azure Blob Storage",
"providerId": "14e34fac-d307-11e9-bb65-2a2ae2dbcce4",
"version": "1.0",
"authSpec": [ // describes the authentication parameters
{
"name": "ConnectionString",
"type": "ConnectionString",
"spec": {
"$schema": "http://json-schema.org/draft-07/schema#",
"description": "Connection String for Azure Blob based destinations",
"type": "object",
"properties": {
"connectionString": {
"description": "connection string for login",
"type": "string",
"format": "password"
}
},
"required": [
"connectionString"
]
}
}
],
//...
請注意醒目提示的行,其中含有內嵌註釋 connection spec 以下範例提供有關在何處尋找驗證引數的其他資訊 connection spec.
{
"items": [
{
"id": "be2c3209-53bc-47e7-ab25-145db8b873e1",
"name": "Azure Data Lake Gen2",
"providerId": "14e34fac-d307-11e9-bb65-2a2ae2dbcce4",
"version": "1.0",
"authSpec": [ // describes the authentication parameters
{
"name": "Azure Service Principal Auth",
"type": "AzureServicePrincipal",
"spec": {
"$schema": "http://json-schema.org/draft-07/schema#",
"description": "defines auth params required for connecting to adlsgen2 using service principal",
"type": "object",
"properties": {
"url": {
"description": "Endpoint for Azure Data Lake Storage Gen2.",
"type": "string"
},
"servicePrincipalId": {
"description": "Service Principal Id to connect to ADLSGen2.",
"type": "string"
},
"servicePrincipalKey": {
"description": "Service Principal Key to connect to ADLSGen2.",
"type": "string",
"format": "password"
},
"tenant": {
"description": "Tenant information(domain name or tenant ID).",
"type": "string"
}
},
"required": [
"servicePrincipalKey",
"url",
"tenant",
"servicePrincipalId"
]
}
}
],
//...
資料登陸區域目的地不需要 auth spec.
{
"items": [
{
"id": "10440537-2a7b-4583-ac39-ed38d4b848e8",
"name": "Data Landing Zone",
"providerId": "14e34fac-d307-11e9-bb65-2a2ae2dbcce4",
"version": "1.0",
"authSpec": [],
//...
請注意醒目提示的行,其中含有內嵌註釋 connection spec 以下範例提供有關在何處尋找驗證引數的其他資訊 connection spec.
{
"items": [
{
"id": "c5d93acb-ea8b-4b14-8f53-02138444ae99",
"name": "Google Cloud Storage",
"providerId": "14e34fac-d307-11e9-bb65-2a2ae2dbcce4",
"version": "1.0",
"authSpec": [ // describes the authentication parameters
{
"name": "Google Cloud Storage authentication credentials",
"type": "GoogleCloudStorageAuth",
"spec": {
"$schema": "http://json-schema.org/draft-07/schema#",
"description": "defines auth params required for connecting to google cloud storage connector.",
"type": "object",
"properties": {
"accessKeyId": {
"description": "Access Key Id for the user account",
"type": "string"
},
"secretAccessKey": {
"description": "Secret Access Key for the user account",
"type": "string",
"format": "password"
}
},
"required": [
"accessKeyId",
"secretAccessKey"
]
}
}
],
//...
SFTP目的地包含兩個獨立專案,分別位在 auth spec,因為它同時支援密碼和SSH金鑰驗證。
請注意醒目提示的行,其中含有內嵌註釋 connection spec 以下範例提供有關在何處尋找驗證引數的其他資訊 connection spec.
{
"items": [
{
"id": "36965a81-b1c6-401b-99f8-22508f1e6a26",
"name": "SFTP",
"providerId": "14e34fac-d307-11e9-bb65-2a2ae2dbcce4",
"version": "1.0",
"authSpec": [ // describes the authentication parameters
{
"name": "SFTP with Password",
"type": "SFTP",
"spec": {
"$schema": "http://json-schema.org/draft-07/schema#",
"description": "defines auth params required for connecting to sftp locations with a password",
"type": "object",
"properties": {
"domain": {
"description": "Domain of server",
"type": "string"
},
"username": {
"description": "Username",
"type": "string"
},
"password": {
"description": "Password",
"type": "string",
"format": "password"
}
},
"required": [
"password",
"domain",
"username"
]
}
},
{
"name": "SFTP with SSH Key",
"type": "SFTP",
"spec": {
"$schema": "http://json-schema.org/draft-07/schema#",
"description": "defines auth params required for connecting to sftp locations using SSH Key",
"type": "object",
"properties": {
"domain": {
"description": "Domain of server",
"type": "string"
},
"username": {
"description": "Username",
"type": "string"
},
"sshKey": {
"description": "Base64 string of the private SSH key",
"type": "string",
"format": "password",
"contentEncoding": "base64",
"uiAttributes": {
"tooltip": {
"id": "platform_destinations_connect_sftp_ssh",
"fallbackUrl": "http://www.adobe.com/go/destinations-sftp-connection-parameters-en "
}
}
}
},
"required": [
"sshKey",
"domain",
"username"
]
}
}
],
//...
使用驗證規格中指定的屬性(即 authSpec
(從回應),您可以使用每個目的地型別特有的必要認證來建立基礎連線,如下列範例所示:
要求
如需有關如何取得所需驗證認證的資訊,請參閱 驗證到目的地 Amazon S3目的地檔案頁面的區段。
請注意請求範例中反白顯示內嵌註解的行,這些註解會提供額外資訊。 將請求複製貼上您選擇的終端機時,移除請求中的內嵌註解。
curl --location --request POST 'https://platform.adobe.io/data/foundation/flowservice/connections' \
--header 'accept: application/json' \
--header 'Authorization: Bearer {ACCESS_TOKEN}' \
--header 'x-api-key: {API_KEY}' \
--header 'x-gw-ims-org-id: {ORG_ID}' \
--header 'x-sandbox-name: {SANDBOX_NAME}' \
--header 'Content-Type: application/json' \
--data-raw '{
"name": "Amazon S3 Base Connection",
"auth": {
"specName": "Access Key",
"params": {
"s3SecretKey": "<Add secret key>",
"s3AccessKey": "<Add access key>"
}
},
"connectionSpec": {
"id": "4fce964d-3f37-408f-9778-e597338a21ee", // Amazon S3 connection spec
"version": "1.0"
}
}'
回應
{
"id": "12401496-2573-4ca7-8137-fef1aeb9dd4c",
"etag": "\"0000d781-0000-0200-0000-63e29f420000\""
}
要求
如需有關如何取得所需驗證認證的資訊,請參閱 驗證到目的地 Azure Blob儲存體目的地檔案頁面的區段。
請注意請求範例中反白顯示內嵌註解的行,這些註解會提供額外資訊。 將請求複製貼上您選擇的終端機時,移除請求中的內嵌註解。
curl --location --request POST 'https://platform.adobe.io/data/foundation/flowservice/connections' \
--header 'accept: application/json' \
--header 'Authorization: Bearer {ACCESS_TOKEN}' \
--header 'x-api-key: {API_KEY}' \
--header 'x-gw-ims-org-id: {ORG_ID}' \
--header 'x-sandbox-name: {SANDBOX_NAME}' \
--header 'Content-Type: application/json' \
--data-raw '{
"name": "Azure Blob Storage Base Connection",
"auth": {
"specName": "ConnectionString",
"params": {
"connectionString": "<Add Azure Blob connection string>"
}
},
"connectionSpec": {
"id": "6d6b59bf-fb58-4107-9064-4d246c0e5bb2", // Azure Blob Storage connection spec
"version": "1.0"
}
}'
回應
{
"id": "12401496-2573-4ca7-8137-fef1aeb9dd4c",
"etag": "\"0000d781-0000-0200-0000-63e29f420000\""
}
要求
如需有關如何取得所需驗證認證的資訊,請參閱 驗證到目的地 Azure Data Lake Gen 2(ADLS Gen2)目的地檔案頁面的區段。
請注意請求範例中反白顯示內嵌註解的行,這些註解會提供額外資訊。 將請求複製貼上您選擇的終端機時,移除請求中的內嵌註解。
curl --location --request POST 'https://platform.adobe.io/data/foundation/flowservice/connections' \
--header 'accept: application/json' \
--header 'Authorization: Bearer {ACCESS_TOKEN}' \
--header 'x-api-key: {API_KEY}' \
--header 'x-gw-ims-org-id: {ORG_ID}' \
--header 'x-sandbox-name: {SANDBOX_NAME}' \
--header 'Content-Type: application/json' \
--data-raw '{
"name": "Azure Data Lake Gen 2(ADLS Gen2) Base Connection",
"auth": {
"specName": "Azure Service Principal Auth",
"params": {
"servicePrincipalKey": "<Add servicePrincipalKey>",
"url": "<Add url>",
"tenant": "<Add tenant>",
"servicePrincipalId": "<Add servicePrincipalId>"
}
},
"connectionSpec": {
"id": "be2c3209-53bc-47e7-ab25-145db8b873e1", // Azure Data Lake Gen 2(ADLS Gen2) connection spec
"version": "1.0"
}
}'
回應
{
"id": "12401496-2573-4ca7-8137-fef1aeb9dd4c",
"etag": "\"0000d781-0000-0200-0000-63e29f420000\""
}
要求
資料登陸區域目的地不需要驗證認證。 如需詳細資訊,請參閱 驗證到目的地 資料登陸區域目的地檔案頁面的區段。
curl --location --request POST 'https://platform.adobe.io/data/foundation/flowservice/connections' \
--header 'accept: application/json' \
--header 'Authorization: Bearer {ACCESS_TOKEN}' \
--header 'x-api-key: {API_KEY}' \
--header 'x-gw-ims-org-id: {ORG_ID}' \
--header 'x-sandbox-name: {SANDBOX_NAME}' \
--header 'Content-Type: application/json' \
--data-raw '{
"name": "Data Landing Zone(DLZ) Base Connection"
}'
回應
{
"id": "12401496-2573-4ca7-8137-fef1aeb9dd4c",
"etag": "\"0000d781-0000-0200-0000-63e29f420000\""
}
要求
如需有關如何取得所需驗證認證的資訊,請參閱 驗證到目的地 Google雲端儲存空間目的地檔案頁面的區段。
請注意請求範例中反白顯示內嵌註解的行,這些註解會提供額外資訊。 將請求複製貼上您選擇的終端機時,移除請求中的內嵌註解。
curl --location --request POST 'https://platform.adobe.io/data/foundation/flowservice/connections' \
--header 'accept: application/json' \
--header 'Authorization: Bearer {ACCESS_TOKEN}' \
--header 'x-api-key: {API_KEY}' \
--header 'x-gw-ims-org-id: {ORG_ID}' \
--header 'x-sandbox-name: {SANDBOX_NAME}' \
--header 'Content-Type: application/json' \
--data-raw '{
"name": "Google Cloud Storage Base Connection",
"auth": {
"specName": "Google Cloud Storage authentication credentials",
"params": {
"accessKeyId": "<Add accessKeyId>",
"secretAccessKey": "<Add secret Access Key>"
}
},
"connectionSpec": {
"id": "c5d93acb-ea8b-4b14-8f53-02138444ae99", // Google Cloud Storage connection spec
"version": "1.0"
}
}'
回應
{
"id": "12401496-2573-4ca7-8137-fef1aeb9dd4c",
"etag": "\"0000d781-0000-0200-0000-63e29f420000\""
}
要求
如需有關如何取得所需驗證認證的資訊,請參閱 驗證到目的地 SFTP目的地檔案頁面的區段。
請注意請求範例中反白顯示內嵌註解的行,這些註解會提供額外資訊。 將請求複製貼上您選擇的終端機時,移除請求中的內嵌註解。
curl --location --request POST 'https://platform.adobe.io/data/foundation/flowservice/connections' \
--header 'accept: application/json' \
--header 'Authorization: Bearer {ACCESS_TOKEN}' \
--header 'x-api-key: {API_KEY}' \
--header 'x-gw-ims-org-id: {ORG_ID}' \
--header 'x-sandbox-name: {SANDBOX_NAME}' \
--header 'Content-Type: application/json' \
--data-raw '{
"name": "SFTP with password Base Connection",
"auth": {
"specName": "SFTP with Password",
"params": {
"domain": "<Add domain>",
"username": "<Add username>",
"password": "<Add password>",
"port": "<Add port>"
}
},
"connectionSpec": {
"id": "36965a81-b1c6-401b-99f8-22508f1e6a26", // SFTP connection spec
"version": "1.0"
}
}'
屬性 | 說明 |
---|---|
specName |
使用 SFTP with Password . |
domain |
SFTP儲存位置的IP位址或網域名稱。 |
username |
用來登入您的SFTP儲存位置的使用者名稱。 |
password |
用來登入您的SFTP儲存位置的密碼。 |
port |
您的SFTP儲存位置所使用的連線埠。 |
如需有關如何取得所需驗證認證的資訊,請參閱 驗證到目的地 SFTP目的地檔案頁面的區段。
請注意請求範例中反白顯示內嵌註解的行,這些註解會提供額外資訊。 將請求複製貼上您選擇的終端機時,移除請求中的內嵌註解。
curl --location --request POST 'https://platform.adobe.io/data/foundation/flowservice/connections' \
--header 'accept: application/json' \
--header 'Authorization: Bearer {ACCESS_TOKEN}' \
--header 'x-api-key: {API_KEY}' \
--header 'x-gw-ims-org-id: {ORG_ID}' \
--header 'x-sandbox-name: {SANDBOX_NAME}' \
--header 'Content-Type: application/json' \
--data-raw '{
"name": "SFTP with SSH key Base Connection",
"auth": {
"specName": "SFTP with SSH Key",
"params": {
"domain": "<Add domain>",
"username": "<Add username>",
"sshKey": "<Add SSH key>",
"port": "<Add port>"
}
},
"connectionSpec": {
"id": "36965a81-b1c6-401b-99f8-22508f1e6a26", // SFTP connection spec
"version": "1.0"
}
}'
屬性 | 說明 |
---|---|
specName |
使用 SFTP with Password . |
domain |
SFTP儲存位置的IP位址或網域名稱。 |
username |
用來登入您的SFTP儲存位置的使用者名稱。 |
sshKey |
用來登入您的SFTP儲存位置的私人SSH金鑰。 私密 金鑰的格式必須為 Base64 編碼的字串,並且不得受密碼保護。 |
port |
您的SFTP儲存位置所使用的連線埠。 |
回應
{
"id": "12401496-2573-4ca7-8137-fef1aeb9dd4c",
"etag": "\"0000d781-0000-0200-0000-63e29f420000\""
}
您可以選擇將加密新增至匯出的檔案。 若要這麼做,您需要從以下專案新增專案: encryptionSpecs
. 請參閱以下請求範例,並將強制引數反白顯示:
"encryptionSpecs": [
{
"name": "File PGP/GPG Encryption",
"type": "FileAsymmetric",
"spec": {
"$schema": "http://json-schema.org/draft-07/schema#",
"description": "Defines parameters required for capturing user's inputs for encryption",
"type": "object",
"properties": {
"publicKey": {
"description": "Base64 encoded RSA public key",
"type": "string",
"contentEncoding": "base64"
},
"encryptionAlgo": {
"description": "Algorithm for encryption.",
"type": "string",
"default": "PGPGPG",
"enum": [
"PGPGPG",
"NONE"
]
}
},
"required": [
"encryptionAlgo",
"publicKey"
]
}
}
]
要求
請注意請求範例中反白顯示內嵌註解的行,這些註解會提供額外資訊。 將請求複製貼上您選擇的終端機時,移除內嵌註解。
curl --location --request POST 'https://platform.adobe.io/data/foundation/flowservice/connections' \
--header 'accept: application/json' \
--header 'Authorization: Bearer {ACCESS_TOKEN}' \
--header 'x-api-key: {API_KEY}' \
--header 'x-gw-ims-org-id: {ORG_ID}' \
--header 'x-sandbox-name: {SANDBOX_NAME}' \
--header 'Content-Type: application/json' \
--data-raw '{
"name": "SFTP with SSH key Base Connection",
"auth": {
"specName": "SFTP with SSH Key",
"params": {
"domain": "<Add domain>",
"username": "<Add username>",
"sshKey": "<Add SSH key>"
}
},
"encryptionSpecs":{
"specName": "Encryption spec",
"params": {
"encryptionAlgo":"PGPGPG",
"publicKey":"<Add public key>"
}
},
"connectionSpec": {
"id": "36965a81-b1c6-401b-99f8-22508f1e6a26", // SFTP connection spec
"version": "1.0"
}
}'
回應
{
"id": "900df191-b983-45cd-90d5-4c7a0326d650",
"etag": "\"0500ebe1-0000-0200-0000-63e28d060000\""
}
記下回應中的連線ID。 建立目標連線時,下個步驟需要此ID。
接下來,您需要建立目標連線。 目標連線 儲存匯出對象的匯出引數。 匯出引數包括匯出位置、檔案格式、壓縮和其他細節。 例如,對於CSV檔案,您可以選取多個匯出選項。 取得「 」中所有支援的CSV匯出選項的詳細資訊 檔案格式設定組態頁面.
請參閱 targetSpec
目的地中提供的屬性 connection spec
以瞭解每種目的地型別的支援屬性。 請參考下列標籤 targetSpec
所有支援目的地的屬性。
請注意反白的行,這些行具有內嵌註解 connection spec 以下範例提供有關在何處尋找 target spec 連線規格中的引數。 您也可以在下列範例中看到目標引數為 非 適用於對象匯出目的地。
{
"items": [
{
"id": "4fce964d-3f37-408f-9778-e597338a21ee",
"name": "Amazon S3",
"providerId": "14e34fac-d307-11e9-bb65-2a2ae2dbcce4",
"version": "1.0",
"authSpec": [...],
"encryptionSpecs": [...],
"targetSpec": { //describes the target connection parameters
"name": "User based target",
"type": "UserNamespace",
"spec": {
"$schema": "http://json-schema.org/draft-07/schema#",
"type": "object",
"properties": {
"bucketName": {
"title": "Bucket name",
"description": "Bucket name",
"type": "string",
"pattern": "(?=^.{3,63}$)(?!^(\\d+\\.)+\\d+$)(^(([a-z0-9]|[a-z0-9][a-z0-9\\-]*[a-z0-9])\\.)*([a-z0-9]|[a-z0-9][a-z0-9\\-]*[a-z0-9])$)",
"uiAttributes": {
"tooltip": {
"id": "platform_destinations_connect_s3_bucket",
"fallbackUrl": "http://www.adobe.com/go/destinations-amazon-s3-connection-parameters-en"
}
}
},
"path": {
"title": "Folder path",
"description": "Output path for copying files",
"type": "string",
"pattern": "^[0-9a-zA-Z\/\\!\\-_\\.\\*\\''\\(\\)]*((\\%SEGMENT_(NAME|ID)\\%)?\/?)+$",
"uiAttributes": {
"tooltip": {
"id": "platform_destinations_connect_s3_folderpath",
"fallbackUrl": "http://www.adobe.com/go/destinations-amazon-s3-connection-parameters-en"
}
}
},
"fileType": {
"conditional": {
"field": "flowSpec.attributes._workflow",
"operator": "NOT_CONTAINS",
"value": "DATASETS"
},
"title": "File Type",
"description": "Select file format",
"type": "string",
"enum": [
"CSV",
"JSON",
"PARQUET"
]
},
"datasetFileType": { // does not apply to audience export destinations
"conditional": {
"field": "flowSpec.attributes._workflow",
"operator": "CONTAINS",
"value": "DATASETS"
},
"title": "File Type",
"description": "Select file format",
"type": "string",
"enum": [
"JSON",
"PARQUET"
]
},
"csvOptions": {
"conditional": {
"field": "fileType",
"operator": "EQUALS",
"value": "CSV"
},
"title": "CSV Options",
"description": "Select your CSV options",
"type": "object",
"properties": {
"quote": {
"title": "Quote Character",
"description": "Select your Quote character",
"type": "string",
"oneOf": [
{
"title": "Double Quotes (\")",
"const": "\""
},
{
"title":"Null Character (\\)",
"const": ""
}
],
"default": ""
},
"escape": {
"title": "Escape Character",
"description": "Select your Escape character",
"type": "string",
"oneOf": [
{
"title": "Back Slash (\\)",
"const": "\\"
},
{
"title": "Single Quote (')",
"const": "'"
}
],
"default": "\\"
},
"delimiter": {
"title": "Delimiter",
"description": "Select your Delimiter",
"type": "string",
"oneOf": [
{
"title": "Comma (,)",
"const": ","
},
{
"title": "Tab (\\t)",
"const": "\t"
},
{
"title": "Pipe (|)",
"const": "|"
},
{
"title": "Semicolon (;)",
"const": ";"
},
{
"title": "Colon (:)",
"const": ":"
}
],
"default": ","
},
"nullValue": {
"title": "Null Value",
"description": "Select the output value of 'null' fields",
"type": "string",
"oneOf": [
{
"title": "null",
"const": "null"
},
{
"title": "\"\"",
"const": "\"\""
},
{
"title": "Empty String",
"const": ""
}
],
"default": "null"
},
"emptyValue": {
"title": "Empty Value",
"description": "Select the output value of blank fields",
"type": "string",
"oneOf": [
{
"title": "null",
"const": "null"
},
{
"title": "\"\"",
"const": "\"\""
},
{
"title": "Empty String",
"const": ""
}
],
"default": ""
}
}
},
"compression": {
"title": "Compression format",
"description": "Select the desired file compression format.",
"type": "string",
"enum": [
"NONE",
"GZIP"
]
}
},
"required": [
"bucketName",
"path",
"datasetFileType",
"compression",
"fileType"
]
}
//...
請注意反白的行,這些行具有內嵌註解 connection spec 以下範例提供有關在何處尋找 target spec 連線規格中的引數。 您也可以在下列範例中看到目標引數為 非 適用於對象匯出目的地。
{
"items": [
{
"id": "6d6b59bf-fb58-4107-9064-4d246c0e5bb2",
"name": "Azure Blob Storage",
"providerId": "14e34fac-d307-11e9-bb65-2a2ae2dbcce4",
"version": "1.0",
"authSpec": [...],
"encryptionSpecs": [...],
"targetSpec": { // describes the target connection parameters
"name": "User based target",
"type": "UserNamespace",
"spec": {
"$schema": "http://json-schema.org/draft-07/schema#",
"type": "object",
"properties": {
"path": {
"title": "Folder path",
"description": "Output path (relative) indicating where to upload the data",
"type": "string",
"pattern": "^[0-9a-zA-Z\/\\!\\-_\\.\\*\\'\\(\\)]+$"
},
"container": {
"title": "Container",
"description": "Container within the storage where to upload the data",
"type": "string",
"pattern": "^[a-z0-9](?!.*--)[a-z0-9-]{1,61}[a-z0-9]$"
},
"fileType": {
"conditional": {
"field": "flowSpec.attributes._workflow",
"operator": "NOT_CONTAINS",
"value": "DATASETS"
},
"title": "File Type",
"description": "Select file format",
"type": "string",
"enum": [
"CSV",
"JSON",
"PARQUET"
]
},
"datasetFileType": { // does not apply to audience export destinations
"conditional": {
"field": "flowSpec.attributes._workflow",
"operator": "CONTAINS",
"value": "DATASETS"
},
"title": "File Type",
"description": "Select file format",
"type": "string",
"enum": [
"JSON",
"PARQUET"
]
},
"csvOptions": {
"conditional": {
"field": "fileType",
"operator": "EQUALS",
"value": "CSV"
},
"title": "CSV Options",
"description": "Select your CSV options",
"type": "object",
"properties": {
"quote": {
"title": "Quote Character",
"description": "Select your Quote character",
"type": "string",
"oneOf": [
{
"title": "Double Quotes (\")",
"const": "\""
},
{
"title":"Null Character (\\)",
"const": ""
}
],
"default": ""
},
"escape": {
"title": "Escape Character",
"description": "Select your Escape character",
"type": "string",
"oneOf": [
{
"title": "Back Slash (\\)",
"const": "\\"
},
{
"title": "Single Quote (')",
"const": "'"
}
],
"default": "\\"
},
"delimiter": {
"title": "Delimiter",
"description": "Select your Delimiter",
"type": "string",
"oneOf": [
{
"title": "Comma (,)",
"const": ","
},
{
"title": "Tab (\\t)",
"const": "\t"
},
{
"title": "Pipe (|)",
"const": "|"
},
{
"title": "Semicolon (;)",
"const": ";"
},
{
"title": "Colon (:)",
"const": ":"
}
],
"default": ","
},
"nullValue": {
"title": "Null Value",
"description": "Select the output value of 'null' fields",
"type": "string",
"oneOf": [
{
"title": "null",
"const": "null"
},
{
"title": "\"\"",
"const": "\"\""
},
{
"title": "Empty String",
"const": ""
}
],
"default": "null"
},
"emptyValue": {
"title": "Empty Value",
"description": "Select the output value of blank fields",
"type": "string",
"oneOf": [
{
"title": "null",
"const": "null"
},
{
"title": "\"\"",
"const": "\"\""
},
{
"title": "Empty String",
"const": ""
}
],
"default": ""
}
}
},
"compression": {
"title": "Compression format",
"description": "Select the desired file compression format.",
"type": "string",
"enum": [
"NONE",
"GZIP"
]
}
},
"required": [
"container",
"path",
"datasetFileType",
"compression",
"fileType"
]
}
//...
請注意反白的行,這些行具有內嵌註解 connection spec 以下範例提供有關在何處尋找 target spec 連線規格中的引數。 您也可以在下列範例中看到目標引數為 非 適用於對象匯出目的地。
{
"items": [
{
"id": "be2c3209-53bc-47e7-ab25-145db8b873e1",
"name": "Azure Data Lake Gen2",
"providerId": "14e34fac-d307-11e9-bb65-2a2ae2dbcce4",
"version": "1.0",
"authSpec": [...],
"encryptionSpecs": [...],
"targetSpec": { // describes the target connection parameters
"name": "User based target",
"type": "UserNamespace",
"spec": {
"$schema": "http://json-schema.org/draft-07/schema#",
"type": "object",
"properties": {
"path": {
"title": "Folder path",
"description": "Enter the path to your Azure Data Lake Storage folder",
"type": "string"
},
"fileType": {
"conditional": {
"field": "flowSpec.attributes._workflow",
"operator": "NOT_CONTAINS",
"value": "DATASETS"
},
"title": "File Type",
"description": "Select file format",
"type": "string",
"enum": [
"CSV",
"JSON",
"PARQUET"
]
},
"datasetFileType": { // does not apply to audience export destinations
"conditional": {
"field": "flowSpec.attributes._workflow",
"operator": "CONTAINS",
"value": "DATASETS"
},
"title": "File Type",
"description": "Select file format",
"type": "string",
"enum": [
"JSON",
"PARQUET"
]
},
"csvOptions": {
"conditional": {
"field": "fileType",
"operator": "EQUALS",
"value": "CSV"
},
"title": "CSV Options",
"description": "Select your CSV options",
"type": "object",
"properties": {
"quote": {
"title": "Quote Character",
"description": "Select your Quote character",
"type": "string",
"oneOf": [
{
"title": "Double Quotes (\")",
"const": "\""
},
{
"title":"Null Character (\\)",
"const": ""
}
],
"default": ""
},
"escape": {
"title": "Escape Character",
"description": "Select your Escape character",
"type": "string",
"oneOf": [
{
"title": "Back Slash (\\)",
"const": "\\"
},
{
"title": "Single Quote (')",
"const": "'"
}
],
"default": "\\"
},
"delimiter": {
"title": "Delimiter",
"description": "Select your Delimiter",
"type": "string",
"oneOf": [
{
"title": "Comma (,)",
"const": ","
},
{
"title": "Tab (\\t)",
"const": "\t"
},
{
"title": "Pipe (|)",
"const": "|"
},
{
"title": "Semicolon (;)",
"const": ";"
},
{
"title": "Colon (:)",
"const": ":"
}
],
"default": ","
},
"nullValue": {
"title": "Null Value",
"description": "Select the output value of 'null' fields",
"type": "string",
"oneOf": [
{
"title": "null",
"const": "null"
},
{
"title": "\"\"",
"const": "\"\""
},
{
"title": "Empty String",
"const": ""
}
],
"default": "null"
},
"emptyValue": {
"title": "Empty Value",
"description": "Select the output value of blank fields",
"type": "string",
"oneOf": [
{
"title": "null",
"const": "null"
},
{
"title": "\"\"",
"const": "\"\""
},
{
"title": "Empty String",
"const": ""
}
],
"default": ""
}
}
},
"compression": {
"title": "Compression format",
"description": "Select the desired file compression format.",
"type": "string",
"enum": [
"NONE",
"GZIP"
]
}
},
"required": [
"path",
"datasetFileType",
"compression",
"fileType"
]
}
//...
請注意反白的行,這些行具有內嵌註解 connection spec 以下範例提供有關在何處尋找 target spec 連線規格中的引數。 您也可以在下列範例中看到目標引數為 非 適用於對象匯出目的地。
"items": [
{
"id": "10440537-2a7b-4583-ac39-ed38d4b848e8",
"name": "Data Landing Zone",
"providerId": "14e34fac-d307-11e9-bb65-2a2ae2dbcce4",
"version": "1.0",
"authSpec": [],
"encryptionSpecs": [],
"targetSpec": { // describes the target connection parameters
"name": "User based target",
"type": "UserNamespace",
"spec": {
"$schema": "http://json-schema.org/draft-07/schema#",
"type": "object",
"properties": {
"path": {
"title": "Folder path",
"description": "Enter the path to your Azure Data Lake Storage folder",
"type": "string"
},
"fileType": {
"conditional": {
"field": "flowSpec.attributes._workflow",
"operator": "NOT_CONTAINS",
"value": "DATASETS"
},
"title": "File Type",
"description": "Select file format",
"type": "string",
"enum": [
"CSV",
"JSON",
"PARQUET"
]
},
"datasetFileType": { // does not apply to audience export destinations
"conditional": {
"field": "flowSpec.attributes._workflow",
"operator": "CONTAINS",
"value": "DATASETS"
},
"title": "File Type",
"description": "Select file format",
"type": "string",
"enum": [
"JSON",
"PARQUET"
]
},
"csvOptions": {
"conditional": {
"field": "fileType",
"operator": "EQUALS",
"value": "CSV"
},
"title": "CSV Options",
"description": "Select your CSV options",
"type": "object",
"properties": {
"quote": {
"title": "Quote Character",
"description": "Select your Quote character",
"type": "string",
"oneOf": [
{
"title": "Double Quotes (\")",
"const": "\""
},
{
"title":"Null Character (\\)",
"const": ""
}
],
"default": ""
},
"escape": {
"title": "Escape Character",
"description": "Select your Escape character",
"type": "string",
"oneOf": [
{
"title": "Back Slash (\\)",
"const": "\\"
},
{
"title": "Single Quote (')",
"const": "'"
}
],
"default": "\\"
},
"delimiter": {
"title": "Delimiter",
"description": "Select your Delimiter",
"type": "string",
"oneOf": [
{
"title": "Comma (,)",
"const": ","
},
{
"title": "Tab (\\t)",
"const": "\t"
},
{
"title": "Pipe (|)",
"const": "|"
},
{
"title": "Semicolon (;)",
"const": ";"
},
{
"title": "Colon (:)",
"const": ":"
}
],
"default": ","
},
"nullValue": {
"title": "Null Value",
"description": "Select the output value of 'null' fields",
"type": "string",
"oneOf": [
{
"title": "null",
"const": "null"
},
{
"title": "\"\"",
"const": "\"\""
},
{
"title": "Empty String",
"const": ""
}
],
"default": "null"
},
"emptyValue": {
"title": "Empty Value",
"description": "Select the output value of blank fields",
"type": "string",
"oneOf": [
{
"title": "null",
"const": "null"
},
{
"title": "\"\"",
"const": "\"\""
},
{
"title": "Empty String",
"const": ""
}
],
"default": ""
}
}
},
"compression": {
"title": "Compression format",
"description": "Select the desired file compression format.",
"type": "string",
"enum": [
"NONE",
"GZIP"
]
}
},
"required": [
"path",
"datasetFileType",
"compression",
"fileType"
]
}
//...
請注意反白的行,這些行具有內嵌註解 connection spec 以下範例提供有關在何處尋找 target spec 連線規格中的引數。 您也可以在下列範例中看到目標引數為 非 適用於對象匯出目的地。
{
"items": [
{
"id": "c5d93acb-ea8b-4b14-8f53-02138444ae99",
"name": "Google Cloud Storage",
"providerId": "14e34fac-d307-11e9-bb65-2a2ae2dbcce4",
"version": "1.0",
"authSpec": [...],
"encryptionSpecs": [...],
"targetSpec": { // describes the target connection parameters
"name": "User based target",
"type": "UserNamespace",
"spec": {
"$schema": "http://json-schema.org/draft-07/schema#",
"type": "object",
"properties": {
"bucketName": {
"title": "Bucket name",
"description": "Bucket name",
"type": "string",
"pattern": "(?!^goog.*$)(?!^.*g(o|0)(o|0)gle.*$)(((?=^.{3,63}$)(^([a-z0-9]|[a-z0-9][a-z0-9\\-_]*)[a-z0-9]$))|((?=^.{3,222}$)(?!^(\\d+\\.)+\\d+$)(^(([a-z0-9]{1,63}|[a-z0-9][a-z0-9\\-_]{1,61}[a-z0-9])\\.)*([a-z0-9]{1,63}|[a-z0-9][a-z0-9\\-_]{1,61}[a-z0-9])$)))"
},
"path": {
"title": "Folder path",
"description": "Output path for copying files",
"type": "string",
"pattern": "^[0-9a-zA-Z\/\\!\\-_\\.\\*\\''\\(\\)]*((\\%SEGMENT_(NAME|ID)\\%)?\/?)+$"
},
"fileType": {
"conditional": {
"field": "flowSpec.attributes._workflow",
"operator": "NOT_CONTAINS",
"value": "DATASETS"
},
"title": "File Type",
"description": "Select file format",
"type": "string",
"enum": [
"CSV",
"JSON",
"PARQUET"
]
},
"datasetFileType": { // does not apply to audience export destinations
"conditional": {
"field": "flowSpec.attributes._workflow",
"operator": "CONTAINS",
"value": "DATASETS"
},
"title": "File Type",
"description": "Select file format",
"type": "string",
"enum": [
"JSON",
"PARQUET"
]
},
"csvOptions": {
"conditional": {
"field": "fileType",
"operator": "EQUALS",
"value": "CSV"
},
"title": "CSV Options",
"description": "Select your CSV options",
"type": "object",
"properties": {
"quote": {
"title": "Quote Character",
"description": "Select your Quote character",
"type": "string",
"oneOf": [
{
"title": "Double Quotes (\")",
"const": "\""
},
{
"title":"Null Character (\\)",
"const": ""
}
],
"default": ""
},
"escape": {
"title": "Escape Character",
"description": "Select your Escape character",
"type": "string",
"oneOf": [
{
"title": "Back Slash (\\)",
"const": "\\"
},
{
"title": "Single Quote (')",
"const": "'"
}
],
"default": "\\"
},
"delimiter": {
"title": "Delimiter",
"description": "Select your Delimiter",
"type": "string",
"oneOf": [
{
"title": "Comma (,)",
"const": ","
},
{
"title": "Tab (\\t)",
"const": "\t"
},
{
"title": "Pipe (|)",
"const": "|"
},
{
"title": "Semicolon (;)",
"const": ";"
},
{
"title": "Colon (:)",
"const": ":"
}
],
"default": ","
},
"nullValue": {
"title": "Null Value",
"description": "Select the output value of 'null' fields",
"type": "string",
"oneOf": [
{
"title": "null",
"const": "null"
},
{
"title": "\"\"",
"const": "\"\""
},
{
"title": "Empty String",
"const": ""
}
],
"default": "null"
},
"emptyValue": {
"title": "Empty Value",
"description": "Select the output value of blank fields",
"type": "string",
"oneOf": [
{
"title": "null",
"const": "null"
},
{
"title": "\"\"",
"const": "\"\""
},
{
"title": "Empty String",
"const": ""
}
],
"default": ""
}
}
},
"compression": {
"title": "Compression format",
"description": "Select the desired file compression format.",
"type": "string",
"enum": [
"NONE",
"GZIP"
]
}
},
"required": [
"bucketName",
"path",
"datasetFileType",
"compression",
"fileType"
]
}
//...
請注意反白的行,這些行具有內嵌註解 connection spec 以下範例提供有關在何處尋找 target spec 連線規格中的引數。 您也可以在下列範例中看到目標引數為 非 適用於對象匯出目的地。
{
"items": [
{
"id": "36965a81-b1c6-401b-99f8-22508f1e6a26",
"name": "SFTP",
"providerId": "14e34fac-d307-11e9-bb65-2a2ae2dbcce4",
"version": "1.0",
"authSpec": [...],
"encryptionSpecs": [...],
"targetSpec": { // describes the target connection parameters
"name": "User based target",
"type": "UserNamespace",
"spec": {
"$schema": "http://json-schema.org/draft-07/schema#",
"type": "object",
"properties": {
"remotePath": {
"title": "Folder path",
"description": "Enter your folder path",
"type": "string"
},
"fileType": {
"conditional": {
"field": "flowSpec.attributes._workflow",
"operator": "NOT_CONTAINS",
"value": "DATASETS"
},
"title": "File Type",
"description": "Select file format",
"type": "string",
"enum": [
"CSV",
"JSON",
"PARQUET"
]
},
"datasetFileType": { // does not apply to audience export destinations
"conditional": {
"field": "flowSpec.attributes._workflow",
"operator": "CONTAINS",
"value": "DATASETS"
},
"title": "File Type",
"description": "Select file format",
"type": "string",
"enum": [
"JSON",
"PARQUET"
]
},
"csvOptions": {
"conditional": {
"field": "fileType",
"operator": "EQUALS",
"value": "CSV"
},
"title": "CSV Options",
"description": "Select your CSV options",
"type": "object",
"properties": {
"quote": {
"title": "Quote Character",
"description": "Select your Quote character",
"type": "string",
"oneOf": [
{
"title": "Double Quotes (\")",
"const": "\""
},
{
"title":"Null Character (\\)",
"const": ""
}
],
"default": ""
},
"escape": {
"title": "Escape Character",
"description": "Select your Escape character",
"type": "string",
"oneOf": [
{
"title": "Back Slash (\\)",
"const": "\\"
},
{
"title": "Single Quote (')",
"const": "'"
}
],
"default": "\\"
},
"delimiter": {
"title": "Delimiter",
"description": "Select your Delimiter",
"type": "string",
"oneOf": [
{
"title": "Comma (,)",
"const": ","
},
{
"title": "Tab (\\t)",
"const": "\t"
},
{
"title": "Pipe (|)",
"const": "|"
},
{
"title": "Semicolon (;)",
"const": ";"
},
{
"title": "Colon (:)",
"const": ":"
}
],
"default": ","
},
"nullValue": {
"title": "Null Value",
"description": "Select the output value of 'null' fields",
"type": "string",
"oneOf": [
{
"title": "null",
"const": "null"
},
{
"title": "\"\"",
"const": "\"\""
},
{
"title": "Empty String",
"const": ""
}
],
"default": "null"
},
"emptyValue": {
"title": "Empty Value",
"description": "Select the output value of blank fields",
"type": "string",
"oneOf": [
{
"title": "null",
"const": "null"
},
{
"title": "\"\"",
"const": "\"\""
},
{
"title": "Empty String",
"const": ""
}
],
"default": ""
}
}
},
"compression": {
"title": "Compression format",
"description": "Select the desired file compression format.",
"type": "string",
"enum": [
"GZIP",
"NONE"
]
}
},
"required": [
"remotePath",
"datasetFileType",
"compression",
"fileType"
]
},
//...
透過使用上述規格,您可以建構專屬於您所需雲端儲存空間目的地的目標連線要求,如下方標籤所示。
要求
有關如何取得所需目標引數的資訊,請參閱 填寫目的地詳細資料 的區段 Amazon S3 目的地檔案頁面。
請注意請求範例中反白顯示內嵌註解的行,這些註解會提供額外資訊。 將請求複製貼上您選擇的終端機時,移除請求中的內嵌註解。
curl --location --request POST 'https://platform.adobe.io/data/foundation/flowservice/targetConnections' \
--header 'accept: application/json' \
--header 'x-api-key: {API_KEY}' \
--header 'x-gw-ims-org-id: {ORG_ID}' \
--header 'x-sandbox-name: {SANDBOX_NAME}' \
--header 'Content-Type: application/json' \
--header 'Authorization: Bearer {ACCESS_TOKEN}' \
--data-raw '{
"name": "Amazon S3 Target Connection",
"baseConnectionId": "<FROM_STEP_CREATE_BASE_CONNECTION>",
"params": {
"mode": "Server-to-server",
"bucketName": "your-bucket-name",
"path": "folder/subfolder",
"compression": "NONE",
"fileType": "JSON"
},
"connectionSpec": {
"id": "4fce964d-3f37-408f-9778-e597338a21ee", // Amazon S3 connection spec id
"version": "1.0"
}
}'
如需檔案匯出可用CSV選項的詳細資訊,請參閱 檔案格式設定組態頁面 .
curl --location --request POST 'https://platform.adobe.io/data/foundation/flowservice/targetConnections' \
--header 'accept: application/json' \
--header 'x-api-key: {API_KEY}' \
--header 'x-gw-ims-org-id: {ORG_ID}' \
--header 'x-sandbox-name: {SANDBOX_NAME}' \
--header 'Content-Type: application/json' \
--header 'Authorization: Bearer {ACCESS_TOKEN}' \
--data-raw '{
"name":"Amazon S3 Target Connection",
"baseConnectionId":"<FROM_STEP_CREATE_BASE_CONNECTION>",
"params":{
"mode":"Server-to-server",
"bucketName":"your-bucket-name",
"path":"folder/subfolder",
"compression":"GZIP",
"fileType":"CSV",
"csvOptions":{
"nullValue":"null",
"emptyValue":"",
"escape":"\\",
"quote":"",
"delimiter":","
}
},
"connectionSpec":{
"id":"4fce964d-3f37-408f-9778-e597338a21ee",
"version":"1.0"
}
}'
回應
{
"id": "12401496-2573-4ca7-8137-fef1aeb9dd4c",
"etag": "\"0000d781-0000-0200-0000-63e29f420000\""
}
要求
有關如何取得所需目標引數的資訊,請參閱 填寫目的地詳細資料 的區段 Azure Blob Storage 目的地檔案頁面。
請注意請求範例中反白顯示內嵌註解的行,這些註解會提供額外資訊。 將請求複製貼上您選擇的終端機時,移除請求中的內嵌註解。
curl --location --request POST 'https://platform.adobe.io/data/foundation/flowservice/targetConnections' \
--header 'accept: application/json' \
--header 'x-api-key: {API_KEY}' \
--header 'x-gw-ims-org-id: {ORG_ID}' \
--header 'x-sandbox-name: {SANDBOX_NAME}' \
--header 'Content-Type: application/json' \
--header 'Authorization: Bearer {ACCESS_TOKEN}' \
--data-raw '{
"name": "Azure Blob Storage Target Connection",
"baseConnectionId": "<FROM_STEP_CREATE_BASE_CONNECTION>",
"params": {
"mode": "Server-to-server",
"container": "your-container-name",
"path": "folder/subfolder",
"compression": "NONE",
"fileType": "JSON"
},
"connectionSpec": {
"id": "6d6b59bf-fb58-4107-9064-4d246c0e5bb2", // Azure Blob Storage connection spec id
"version": "1.0"
}
}'
如需檔案匯出可用CSV選項的詳細資訊,請參閱 檔案格式設定組態頁面 .
curl --location --request POST 'https://platform.adobe.io/data/foundation/flowservice/targetConnections' \
--header 'accept: application/json' \
--header 'x-api-key: {API_KEY}' \
--header 'x-gw-ims-org-id: {ORG_ID}' \
--header 'x-sandbox-name: {SANDBOX_NAME}' \
--header 'Content-Type: application/json' \
--header 'Authorization: Bearer {ACCESS_TOKEN}' \
--data-raw '{
"name":"Azure Blob Storage Target Connection",
"baseConnectionId":"<FROM_STEP_CREATE_BASE_CONNECTION>",
"params":{
"mode":"Server-to-server",
"bucketName":"your-bucket-name",
"path":"folder/subfolder",
"compression":"GZIP",
"fileType":"CSV",
"csvOptions":{
"nullValue":"null",
"emptyValue":"",
"escape":"\\",
"quote":"",
"delimiter":","
}
},
"connectionSpec":{
"id":"6d6b59bf-fb58-4107-9064-4d246c0e5bb2",
"version":"1.0"
}
}'
回應
{
"id": "12401496-2573-4ca7-8137-fef1aeb9dd4c",
"etag": "\"0000d781-0000-0200-0000-63e29f420000\""
}
要求
有關如何取得所需目標引數的資訊,請參閱 填寫目的地詳細資料 Azure的部分 Data Lake Gen 2(ADLS Gen2) 目的地檔案頁面。
請注意請求範例中反白顯示內嵌註解的行,這些註解會提供額外資訊。 將請求複製貼上您選擇的終端機時,移除請求中的內嵌註解。
curl --location --request POST 'https://platform.adobe.io/data/foundation/flowservice/targetConnections' \
--header 'accept: application/json' \
--header 'x-api-key: {API_KEY}' \
--header 'x-gw-ims-org-id: {ORG_ID}' \
--header 'x-sandbox-name: {SANDBOX_NAME}' \
--header 'Content-Type: application/json' \
--header 'Authorization: Bearer {ACCESS_TOKEN}' \
--data-raw '{
"name": "Azure Data Lake Gen 2(ADLS Gen2) Target Connection",
"baseConnectionId": "<FROM_STEP_CREATE_BASE_CONNECTION>",
"params": {
"mode": "Server-to-server",
"path": "folder/subfolder",
"compression": "NONE",
"fileType": "JSON"
},
"connectionSpec": {
"id": "be2c3209-53bc-47e7-ab25-145db8b873e1", // Azure Data Lake Gen 2(ADLS Gen2) connection spec id
"version": "1.0"
}
}'
如需檔案匯出可用CSV選項的詳細資訊,請參閱 檔案格式設定組態頁面 .
curl --location --request POST 'https://platform.adobe.io/data/foundation/flowservice/targetConnections' \
--header 'accept: application/json' \
--header 'x-api-key: {API_KEY}' \
--header 'x-gw-ims-org-id: {ORG_ID}' \
--header 'x-sandbox-name: {SANDBOX_NAME}' \
--header 'Content-Type: application/json' \
--header 'Authorization: Bearer {ACCESS_TOKEN}' \
--data-raw '{
"name":"Azure Data Lake Gen 2(ADLS Gen2)",
"baseConnectionId":"<FROM_STEP_CREATE_BASE_CONNECTION>",
"params":{
"mode":"Server-to-server",
"bucketName":"your-bucket-name",
"path":"folder/subfolder",
"compression":"GZIP",
"fileType":"CSV",
"csvOptions":{
"nullValue":"null",
"emptyValue":"",
"escape":"\\",
"quote":"",
"delimiter":","
}
},
"connectionSpec":{
"id":"be2c3209-53bc-47e7-ab25-145db8b873e1",
"version":"1.0"
}
}'
回應
{
"id": "12401496-2573-4ca7-8137-fef1aeb9dd4c",
"etag": "\"0000d781-0000-0200-0000-63e29f420000\""
}
要求
有關如何取得所需目標引數的資訊,請參閱 填寫目的地詳細資料 的區段 Data Landing Zone 目的地檔案頁面。
請注意請求範例中反白顯示內嵌註解的行,這些註解會提供額外資訊。 將請求複製貼上您選擇的終端機時,移除請求中的內嵌註解。
curl --location --request POST 'https://platform.adobe.io/data/foundation/flowservice/targetConnections' \
--header 'accept: application/json' \
--header 'x-api-key: {API_KEY}' \
--header 'x-gw-ims-org-id: {ORG_ID}' \
--header 'x-sandbox-name: {SANDBOX_NAME}' \
--header 'Content-Type: application/json' \
--header 'Authorization: Bearer {ACCESS_TOKEN}' \
--data-raw '{
"name": "Data Landing Zone Target Connection",
"baseConnectionId": "<FROM_STEP_CREATE_BASE_CONNECTION>",
"params": {
"mode": "Server-to-server",
"path": "folder/subfolder",
"compression": "NONE",
"fileType": "JSON"
},
"connectionSpec": {
"id": "10440537-2a7b-4583-ac39-ed38d4b848e8", // Data Landing Zone connection spec id
"version": "1.0"
}
}'
如需檔案匯出可用CSV選項的詳細資訊,請參閱 檔案格式設定組態頁面 .
curl --location --request POST 'https://platform.adobe.io/data/foundation/flowservice/targetConnections' \
--header 'accept: application/json' \
--header 'x-api-key: {API_KEY}' \
--header 'x-gw-ims-org-id: {ORG_ID}' \
--header 'x-sandbox-name: {SANDBOX_NAME}' \
--header 'Content-Type: application/json' \
--header 'Authorization: Bearer {ACCESS_TOKEN}' \
--data-raw '{
"name":"Data Landing Zone Target Connection",
"baseConnectionId":"<FROM_STEP_CREATE_BASE_CONNECTION>",
"params":{
"mode":"Server-to-server",
"bucketName":"your-bucket-name",
"path":"folder/subfolder",
"compression":"GZIP",
"fileType":"CSV",
"csvOptions":{
"nullValue":"null",
"emptyValue":"",
"escape":"\\",
"quote":"",
"delimiter":","
}
},
"connectionSpec":{
"id":"10440537-2a7b-4583-ac39-ed38d4b848e8",
"version":"1.0"
}
}'
回應
{
"id": "12401496-2573-4ca7-8137-fef1aeb9dd4c",
"etag": "\"0000d781-0000-0200-0000-63e29f420000\""
}
要求
有關如何取得所需目標引數的資訊,請參閱 填寫目的地詳細資料 的區段 Google Cloud Storage 目的地檔案頁面。
請注意請求範例中反白顯示內嵌註解的行,這些註解會提供額外資訊。 將請求複製貼上您選擇的終端機時,移除請求中的內嵌註解。
curl --location --request POST 'https://platform.adobe.io/data/foundation/flowservice/targetConnections' \
--header 'accept: application/json' \
--header 'x-api-key: {API_KEY}' \
--header 'x-gw-ims-org-id: {ORG_ID}' \
--header 'x-sandbox-name: {SANDBOX_NAME}' \
--header 'Content-Type: application/json' \
--header 'Authorization: Bearer {ACCESS_TOKEN}' \
--data-raw '{
"name": "Google Cloud Storage Target Connection",
"baseConnectionId": "<FROM_STEP_CREATE_BASE_CONNECTION>",
"params": {
"mode": "Server-to-server",
"bucketName": "your-bucket-name",
"path": "folder/subfolder",
"compression": "NONE",
"fileType": "JSON"
},
"connectionSpec": {
"id": "c5d93acb-ea8b-4b14-8f53-02138444ae99", // Google Cloud Storage connection spec id
"version": "1.0"
}
}'
如需檔案匯出可用CSV選項的詳細資訊,請參閱 檔案格式設定組態頁面 .
curl --location --request POST 'https://platform.adobe.io/data/foundation/flowservice/targetConnections' \
--header 'accept: application/json' \
--header 'x-api-key: {API_KEY}' \
--header 'x-gw-ims-org-id: {ORG_ID}' \
--header 'x-sandbox-name: {SANDBOX_NAME}' \
--header 'Content-Type: application/json' \
--header 'Authorization: Bearer {ACCESS_TOKEN}' \
--data-raw '{
"name":"Google Cloud Storage Target Connection",
"baseConnectionId":"<FROM_STEP_CREATE_BASE_CONNECTION>",
"params":{
"mode":"Server-to-server",
"bucketName":"your-bucket-name",
"path":"folder/subfolder",
"compression":"GZIP",
"fileType":"CSV",
"csvOptions":{
"nullValue":"null",
"emptyValue":"",
"escape":"\\",
"quote":"",
"delimiter":","
}
},
"connectionSpec":{
"id":"c5d93acb-ea8b-4b14-8f53-02138444ae99",
"version":"1.0"
}
}'
回應
{
"id": "12401496-2573-4ca7-8137-fef1aeb9dd4c",
"etag": "\"0000d781-0000-0200-0000-63e29f420000\""
}
要求
有關如何取得所需目標引數的資訊,請參閱 填寫目的地詳細資料 SFTP目的地檔案頁面的區段。
請注意請求範例中反白顯示內嵌註解的行,這些註解會提供額外資訊。 將請求複製貼上您選擇的終端機時,移除請求中的內嵌註解。
curl --location --request POST 'https://platform.adobe.io/data/foundation/flowservice/targetConnections' \
--header 'accept: application/json' \
--header 'x-api-key: {API_KEY}' \
--header 'x-gw-ims-org-id: {ORG_ID}' \
--header 'x-sandbox-name: {SANDBOX_NAME}' \
--header 'Content-Type: application/json' \
--header 'Authorization: Bearer {ACCESS_TOKEN}' \
--data-raw '{
"name": "SFTP Target Connection",
"baseConnectionId": "<FROM_STEP_CREATE_BASE_CONNECTION>",
"params": {
"mode": "Server-to-server",
"remotePath": "folder/subfolder",
"compression": "NONE",
"fileType": "JSON"
},
"connectionSpec": {
"id": "36965a81-b1c6-401b-99f8-22508f1e6a26", // SFTP connection spec id
"version": "1.0"
}
}'
如需檔案匯出可用CSV選項的詳細資訊,請參閱 檔案格式設定組態頁面 .
curl --location --request POST 'https://platform.adobe.io/data/foundation/flowservice/targetConnections' \
--header 'accept: application/json' \
--header 'x-api-key: {API_KEY}' \
--header 'x-gw-ims-org-id: {ORG_ID}' \
--header 'x-sandbox-name: {SANDBOX_NAME}' \
--header 'Content-Type: application/json' \
--header 'Authorization: Bearer {ACCESS_TOKEN}' \
--data-raw '{
"name":"SFTP Target Connection",
"baseConnectionId":"<FROM_STEP_CREATE_BASE_CONNECTION>",
"params":{
"mode":"Server-to-server",
"bucketName":"your-bucket-name",
"path":"folder/subfolder",
"compression":"GZIP",
"fileType":"CSV",
"csvOptions":{
"nullValue":"null",
"emptyValue":"",
"escape":"\\",
"quote":"",
"delimiter":","
}
},
"connectionSpec":{
"id":"36965a81-b1c6-401b-99f8-22508f1e6a26",
"version":"1.0"
}
}'
回應
{
"id": "12401496-2573-4ca7-8137-fef1aeb9dd4c",
"etag": "\"0000d781-0000-0200-0000-63e29f420000\""
}
請注意 target connection ID
從回應。 建立資料流以匯出對象時,下個步驟將需要此ID。
成功的回應會傳回ID (id
)的來源連線,以及 etag
. 記下目標連線ID,因為稍後建立資料流時會需要它。
目的地設定的下一個步驟是建立資料流。 A 資料流 會將先前建立的實體繫結在一起,並提供設定對象匯出排程的選項。 若要建立資料流,請根據您所需的雲端儲存空間目的地,使用下列裝載,並取代先前步驟中的流程實體ID。 請注意,在此步驟中,您不會將任何與屬性或身分對應相關的資訊新增至資料流。 這將在下一個步驟中進行。
要求
請注意請求範例中反白顯示內嵌註解的行,這些註解會提供額外資訊。 將請求複製貼上您選擇的終端機時,移除請求中的內嵌註解。
curl --location --request POST 'https://platform.adobe.io/data/foundation/flowservice/flows' \
--header 'accept: application/json' \
--header 'x-api-key: {API_KEY}' \
--header 'x-gw-ims-org-id: {ORG_ID}' \
--header 'x-sandbox-name: {SANDBOX_NAME}' \
--header 'Content-Type: application/json' \
--header 'Authorization: Bearer {ACCESS_TOKEN}' \
--data-raw '{
"name": "Activate audiences to an Amazon S3 cloud storage destination",
"description": "This operation creates a dataflow to export audiences to an Amazon S3 cloud storage destination",
"flowSpec": {
"id": "1a0514a6-33d4-4c7f-aff8-594799c47549", // Amazon S3 flow spec ID
"version": "1.0"
},
"sourceConnectionIds": [
"<FROM_STEP_CREATE_SOURCE_CONNECTION>"
],
"targetConnectionIds": [
"<FROM_STEP_CREATE_TARGET_CONNECTION>"
],
"transformations": []
}'
回應
{
"id": "eb54b3b3-3949-4f12-89c8-64eafaba858f",
"etag": "\"0000d781-0000-0200-0000-63e29f420000\""
}
要求
請注意請求範例中反白顯示內嵌註解的行,這些註解會提供額外資訊。 將請求複製貼上您選擇的終端機時,移除請求中的內嵌註解。
curl --location --request POST 'https://platform.adobe.io/data/foundation/flowservice/flows' \
--header 'accept: application/json' \
--header 'x-api-key: {API_KEY}' \
--header 'x-gw-ims-org-id: {ORG_ID}' \
--header 'x-sandbox-name: {SANDBOX_NAME}' \
--header 'Content-Type: application/json' \
--header 'Authorization: Bearer {ACCESS_TOKEN}' \
--data-raw '{
"name": "Activate audiences to an Azure Blob Storage cloud storage destination",
"description": "This operation creates a dataflow to export audiences to an Azure Blob Storage cloud storage destination",
"flowSpec": {
"id": "752d422f-b16f-4f0d-b1c6-26e448e3b388", // Azure Blob Storage flow spec ID
"version": "1.0"
},
"sourceConnectionIds": [
"<FROM_STEP_CREATE_SOURCE_CONNECTION>"
],
"targetConnectionIds": [
"<FROM_STEP_CREATE_TARGET_CONNECTION>"
],
"transformations": [
{
"name": "GeneralTransform",
"params": {
"mandatoryFields": [],
"primaryFields": [],
"profileMapping": {},
"segmentSelectors": {
"selectors": []
}
}
}
]
}'
回應
{
"id": "eb54b3b3-3949-4f12-89c8-64eafaba858f",
"etag": "\"0000d781-0000-0200-0000-63e29f420000\""
}
要求
請注意請求範例中反白顯示內嵌註解的行,這些註解會提供額外資訊。 將請求複製貼上您選擇的終端機時,移除請求中的內嵌註解。
curl --location --request POST 'https://platform.adobe.io/data/foundation/flowservice/flows' \
--header 'accept: application/json' \
--header 'x-api-key: {API_KEY}' \
--header 'x-gw-ims-org-id: {ORG_ID}' \
--header 'x-sandbox-name: {SANDBOX_NAME}' \
--header 'Content-Type: application/json' \
--header 'Authorization: Bearer {ACCESS_TOKEN}' \
--data-raw '{
"name": "Activate audiences to an Azure Data Lake Gen 2(ADLS Gen2) cloud storage destination",
"description": "This operation creates a dataflow to export audiences to an Azure Data Lake Gen 2(ADLS Gen2) cloud storage destination",
"flowSpec": {
"id": "17be2013-2549-41ce-96e7-a70363bec293", // Azure Data Lake Gen 2(ADLS Gen2) flow spec ID
"version": "1.0"
},
"sourceConnectionIds": [
"<FROM_STEP_CREATE_SOURCE_CONNECTION>"
],
"targetConnectionIds": [
"<FROM_STEP_CREATE_TARGET_CONNECTION>"
],
"transformations": []
}'
回應
{
"id": "eb54b3b3-3949-4f12-89c8-64eafaba858f",
"etag": "\"0000d781-0000-0200-0000-63e29f420000\""
}
要求
請注意請求範例中反白顯示內嵌註解的行,這些註解會提供額外資訊。 將請求複製貼上您選擇的終端機時,移除請求中的內嵌註解。
curl --location --request POST 'https://platform.adobe.io/data/foundation/flowservice/flows' \
--header 'accept: application/json' \
--header 'x-api-key: {API_KEY}' \
--header 'x-gw-ims-org-id: {ORG_ID}' \
--header 'x-sandbox-name: {SANDBOX_NAME}' \
--header 'Content-Type: application/json' \
--header 'Authorization: Bearer {ACCESS_TOKEN}' \
--data-raw '{
"name": "Activate audiences to a Data Landing Zone cloud storage destination",
"description": "This operation creates a dataflow to export audiences to a Data Landing Zone cloud storage destination",
"flowSpec": {
"id": "cd2fc47e-e838-4f38-a581-8fff2f99b63a", // Data Landing Zone flow spec ID
"version": "1.0"
},
"sourceConnectionIds": [
"<FROM_STEP_CREATE_SOURCE_CONNECTION>"
],
"targetConnectionIds": [
"<FROM_STEP_CREATE_TARGET_CONNECTION>"
],
"transformations": []
}'
回應
{
"id": "eb54b3b3-3949-4f12-89c8-64eafaba858f",
"etag": "\"0000d781-0000-0200-0000-63e29f420000\""
}
要求
請注意請求範例中反白顯示內嵌註解的行,這些註解會提供額外資訊。 將請求複製貼上您選擇的終端機時,移除請求中的內嵌註解。
curl --location --request POST 'https://platform.adobe.io/data/foundation/flowservice/flows' \
--header 'accept: application/json' \
--header 'x-api-key: {API_KEY}' \
--header 'x-gw-ims-org-id: {ORG_ID}' \
--header 'x-sandbox-name: {SANDBOX_NAME}' \
--header 'Content-Type: application/json' \
--header 'Authorization: Bearer {ACCESS_TOKEN}' \
--data-raw '{
"name": "Activate audiences to a Google Cloud Storage cloud storage destination",
"description": "This operation creates a dataflow to export audiences to a Google Cloud Storage destination",
"flowSpec": {
"id": "585c15c4-6cbf-4126-8f87-e26bff78b657", // Google Cloud Storage flow spec ID
"version": "1.0"
},
"sourceConnectionIds": [
"<FROM_STEP_CREATE_SOURCE_CONNECTION>"
],
"targetConnectionIds": [
"<FROM_STEP_CREATE_TARGET_CONNECTION>"
],
"transformations": []
}'
回應
{
"id": "eb54b3b3-3949-4f12-89c8-64eafaba858f",
"etag": "\"0000d781-0000-0200-0000-63e29f420000\""
}
要求
請注意請求範例中反白顯示內嵌註解的行,這些註解會提供額外資訊。 將請求複製貼上您選擇的終端機時,移除請求中的內嵌註解。
curl --location --request POST 'https://platform.adobe.io/data/foundation/flowservice/flows' \
--header 'accept: application/json' \
--header 'x-api-key: {API_KEY}' \
--header 'x-gw-ims-org-id: {ORG_ID}' \
--header 'x-sandbox-name: {SANDBOX_NAME}' \
--header 'Content-Type: application/json' \
--header 'Authorization: Bearer {ACCESS_TOKEN}' \
--data-raw '{
"name": "Activate audiences to an SFTP cloud storage destination",
"description": "This operation creates a dataflow to export audiences to an SFTP cloud storage destination",
"flowSpec": {
"id": "fd36aaa4-bf2b-43fb-9387-43785eeeb799", // SFTP flow spec ID
"version": "1.0"
},
"sourceConnectionIds": [
"<FROM_STEP_CREATE_SOURCE_CONNECTION>"
],
"targetConnectionIds": [
"<FROM_STEP_CREATE_TARGET_CONNECTION>"
],
"transformations": []
}'
回應
{
"id": "eb54b3b3-3949-4f12-89c8-64eafaba858f",
"etag": "\"0000d781-0000-0200-0000-63e29f420000\""
}
記下回應中的資料流ID。 此ID在後續步驟中是必要的。
在此步驟中,您也可以選取要匯出至目的地的對象。 如需此步驟以及將對象新增至資料流的請求格式的詳細資訊,請檢視 更新目的地資料流 API參考檔案的區段。
建立資料流後,您需要為要匯出的屬性和身分設定對應。 此程式包含下列三個步驟:
例如,若要取得UI中顯示的以下對應,您需要完成以上列出的三個步驟,並在下一個標題中詳細說明。
若要建立輸入結構描述,您必須先擷取 聯合結構描述 以及可匯出至目的地的身分。 這是屬性和身分的結構描述,您可以選取它作為來源對應。
檢視以下要求與回應範例,以擷取屬性和身分。
要求取得屬性
curl --location --request GET 'https://platform.adobe.io/data/core/ups/config/entityTypes/_xdm.context.profile?property=fullSchema==true&property=includeRelationshipDescriptors==true' \
--header 'x-gw-ims-org-id: {ORG_ID}' \
--header 'x-api-key: {API_KEY}' \
--header 'x-sandbox-name: {SANDBOX_NAME}' \
--header 'Authorization: Bearer {ACCESS_TOKEN}' \
回應
以下回應已縮短,以求簡潔。
"person": {
"title": "Person",
"description": "An individual actor, contact, or owner.",
"meta:referencedFrom": [
"https://ns.adobe.com/xdm/context/person"
],
"type": "object",
"meta:xdmType": "object",
"properties": {
"birthDate": {
"meta:xdmType": "date",
"type": "string",
"format": "date",
"title": "Birth date(YYYY-MM-DD)",
"description": "The full date a person was born."
},
"birthDayAndMonth": {
"type": "string",
"meta:xdmType": "string",
"title": "Birth date (MM-DD)",
"description": "The day and month a person was born, in the format MM-DD. This field should be used when the day and month of a person's birth is known, but not the year."
},
"birthYear": {
"meta:xdmType": "short",
"type": "integer",
"minimum": 1,
"maximum": 32767,
"title": "Birth year",
"description": "The year a person was born including the century, for example, 1983. This field should be used when only the person's age is known, not the full birth date."
},
"gender": {
"type": "string",
"meta:xdmType": "string",
"title": "Gender",
"description": "Gender identity of the person.\n",
"enum": [
"male",
"female",
"not_specified",
"non_specific"
],
"meta:enum": {
"male": "Male",
"female": "Female",
"not_specified": "Not Specified",
"non_specific": "Non-specific"
},
"default": "not_specified"
},
"maritalStatus": {
"type": "string",
"meta:xdmType": "string",
"title": "Marital Status",
"description": "Describes a person's relationship with a significant other.",
"enum": [
"married",
"single",
"divorced",
"widowed",
"not_specified"
],
"meta:enum": {
"divorced": "Divorced",
"not_specified": "Not Specified",
"married": "Married",
"single": "Single",
"widowed": "Widowed"
},
"default": "not_specified"
},
"name": {
"title": "Full name",
"description": "The person's full name.",
"meta:referencedFrom": [
"https://ns.adobe.com/xdm/context/person-name"
],
"type": "object",
"meta:xdmType": "object",
"properties": {
"courtesyTitle": {
"type": "string",
"meta:xdmType": "string",
"title": "Courtesy title",
"description": "Normally an abbreviation of a persons title, honorific, or salutation. The `courtesyTitle` is used in front of full or last name in opening texts. For example, Mr. Miss. or Dr."
},
"firstName": {
"type": "string",
"meta:xdmType": "string",
"title": "First name",
"description": "The first audience of the name in the writing order most commonly accepted in the language of the name. In many cultures this is the preferred personal or given name. The `firstName` and `lastName` properties have been introduced to maintain compatibility with existing systems that model names in a simplified, non-semantic, and non-internationalizable way. Using `xdm:fullName` is always preferable."
},
"fullName": {
"type": "string",
"meta:xdmType": "string",
"title": "Full name",
"description": "The full name of the person, in writing order most commonly accepted in the language of the name."
},
"lastName": {
"type": "string",
"meta:xdmType": "string",
"title": "Last name",
"description": "The last audience of the name in the writing order most commonly accepted in the language of the name. In many cultures this is the inherited family name, surname, patronymic, or matronymic name. The `firstName` and `lastName` properties have been introduced to maintain compatibility with existing systems that model names in a simplified, non-semantic, and non-internationalizable way. Using `xdm:fullName` is always preferable."
},
"middleName": {
"type": "string",
"meta:xdmType": "string",
"title": "Middle name",
"description": "Middle, alternative, or additional names supplied between the first name and last name."
},
"suffix": {
"type": "string",
"meta:xdmType": "string",
"title": "Suffix",
"description": "A group of letters provided after a person's name to provide additional information. The `suffix` is used at the end of someones name. For example Jr., Sr., M.D., PhD, I, II, III, etc."
}
}
},
"nationality": {
"type": "string",
"meta:xdmType": "string",
"title": "Nationality",
"description": "The legal relationship between a person and their state represented using the ISO 3166-1 Alpha-2 code."
},
"taxId": {
"type": "string",
"meta:xdmType": "string",
"title": "Tax ID",
"description": "The Tax / Fiscal ID of the person, e.g. the TIN in the US or the CIF/NIF in Spain.",
"meta:status": "deprecated"
},
"type": {
"type": "string",
"meta:xdmType": "string",
"title": "Type",
"description": "The type of individual in different business contexts like B2C."
}
}
}
要求取得身分
curl --location --request GET 'https://platform.adobe.io/data/core/idnamespace/identities' \
--header 'x-gw-ims-org-id: {ORG_ID}' \
--header 'x-api-key: {API_KEY}' \
--header 'x-sandbox-name: {SANDBOX_NAME}' \
--header 'Authorization: Bearer {ACCESS_TOKEN}' \
回應
回應會傳回您在建立輸入結構描述時可使用的身分。 請注意,此回應會傳回兩者 標準 和 自訂 您在Experience Platform中設定的身分名稱空間。
[
{
"updateTime": 1551688425455,
"code": "CORE",
"status": "ACTIVE",
"description": "Adobe Audience Manger UUID",
"id": 0,
"createTime": 1551688425455,
"idType": "COOKIE",
"namespaceType": "Standard",
"name": "CORE",
"custom": false
},
{
"updateTime": 1551688425455,
"code": "ECID",
"status": "ACTIVE",
"description": "Adobe Experience Cloud ID",
"id": 4,
"createTime": 1551688425455,
"idType": "COOKIE",
"namespaceType": "Standard",
"name": "ECID",
"custom": false
},
{
"updateTime": 1551688425455,
"code": "AdCloud",
"status": "ACTIVE",
"description": "Adobe AdCloud - ID Syncing Partner",
"id": 411,
"createTime": 1551688425455,
"idType": "COOKIE",
"namespaceType": "Standard",
"name": "AdCloud",
"custom": false
},
{
"updateTime": 1551688425455,
"code": "Email_LC_SHA256",
"status": "ACTIVE",
"description": "Email addresses need to be hashed using SHA256 and lowercased. Please also note that leading and trailing spaces need to be trimmed before an email address is normalized. You won't be able to change this setting later",
"id": 11,
"createTime": 1551688425455,
"idType": "Email",
"namespaceType": "Standard",
"name": "Emails (SHA256, lowercased)",
"custom": false,
"hashFunction": "SHA256",
"transform": "lowercase"
},
{
"updateTime": 1597996026101,
"code": "Phone_E.164",
"status": "ACTIVE",
"description": "Namespace for raw phone numbers in E.164 format. + sign is required",
"id": 17,
"createTime": 1597996026101,
"idType": "Phone",
"namespaceType": "Standard",
"name": "Phone (E.164)",
"custom": false
},
{
"updateTime": 1551688425455,
"code": "GAID",
"status": "ACTIVE",
"description": "This datasource is associated to a Google Ad ID",
"id": 20914,
"createTime": 1551688425455,
"idType": "DEVICE",
"namespaceType": "Standard",
"name": "Google Ad ID (GAID)",
"custom": false
},
{
"updateTime": 1476993749000,
"code": "IDFA",
"status": "ACTIVE",
"description": "Apple ID for Advertisers. See: https://support.apple.com/en-us/HT202074 for more info.",
"id": 20915,
"createTime": 1476993749000,
"idType": "DEVICE",
"namespaceType": "Standard",
"name": "Apple IDFA (ID for Advertisers)",
"custom": false
},
{
"updateTime": 1551688425455,
"code": "AAID",
"status": "ACTIVE",
"description": "Adobe Analytics (Legacy ID)",
"id": 10,
"createTime": 1551688425455,
"idType": "COOKIE",
"namespaceType": "Standard",
"name": "Adobe Analytics (Legacy ID)",
"custom": false
},
{
"updateTime": 1551688425455,
"code": "Email",
"status": "ACTIVE",
"description": "Email",
"id": 6,
"createTime": 1551688425455,
"idType": "Email",
"namespaceType": "Standard",
"name": "Email",
"custom": false
},
{
"updateTime": 1551688425455,
"code": "WAID",
"status": "ACTIVE",
"description": "Windows AID",
"id": 8,
"createTime": 1551688425455,
"idType": "DEVICE",
"namespaceType": "Standard",
"name": "Windows AID",
"custom": false
},
{
"updateTime": 1551688425455,
"code": "TNTID",
"status": "ACTIVE",
"description": "Adobe Target (TNTID)",
"id": 9,
"createTime": 1551688425455,
"idType": "COOKIE",
"namespaceType": "Standard",
"name": "TNTID",
"custom": false
},
{
"updateTime": 1556676464714,
"code": "Google",
"status": "ACTIVE",
"id": 771,
"createTime": 1556676464714,
"idType": "COOKIE",
"namespaceType": "Integration",
"name": "Google",
"custom": false
},
{
"updateTime": 1604597776019,
"code": "Phone_SHA256_E.164",
"status": "ACTIVE",
"description": "Phone numbers need to be hashed using SHA256 without any dashes. Hash should be completed by customers on raw phone numbers in E.164 format. Please note that some destinations may have different phone number formatting requirements. Refer to documentation or consult your Adobe representative",
"id": 18,
"createTime": 1604597776019,
"idType": "Phone",
"namespaceType": "Standard",
"name": "Phone (SHA256_E.164)",
"custom": false,
"hashFunction": "SHA256"
},
{
"updateTime": 1604597776019,
"code": "Phone_SHA256",
"status": "ACTIVE",
"description": "Remove symbols, letters, and any leading zeroes before hashing. Prefix the country code before hashing. Please note that some destinations may have different phone number formatting requirements. Refer to documentation or consult your Adobe representative",
"id": 15,
"createTime": 1597995542594,
"idType": "Phone",
"namespaceType": "Standard",
"name": "Phone (SHA256)",
"custom": false,
"hashFunction": "SHA256"
},
{
"updateTime": 1551688425455,
"code": "Phone",
"status": "ACTIVE",
"description": "Phone",
"id": 7,
"createTime": 1551688425455,
"idType": "PHONE_NUMBER",
"namespaceType": "Standard",
"name": "Phone",
"custom": false
}
]
接下來,您需要複製上方的回應,並使用它建立您的輸入結構描述。 您可以複製上方回應的完整JSON回應,並將其放入 jsonSchema
物件。
要求建立輸入結構描述
curl --location --request POST 'https://platform.adobe.io/data/foundation/conversion/schemas/' \
--header 'x-gw-ims-org-id: {ORG_ID}' \
--header 'x-api-key: {API_KEY}' \
--header 'x-sandbox-name: {SANDBOX_NAME}' \
--header 'Authorization: Bearer {ACCESS_TOKEN}' \
--header 'Content-Type: application/json' \
--data-raw '{
"name":"Sample Schema for Flow Mapping",
"jsonSchema":{...insert response from union schema response here}
'
回應
{
"id":"8db56468c2ab475dbf17c2621f92c0f8",
"version":0,
"jsonSchema":{
"title":"XDM Individual Profile",
"description":"An XDM Individual Profile forms a singular representation of the attributes and interests of both identified and partially-identified individuals. Less-identified profiles may contain only anonymous behavioral signals, such as browser cookies, while highly-identified profiles may contain detailed personal information such as name, date of birth, location, and email address. As a profile grows, it becomes a robust repository of personal information, identification information, contact details, and communication preferences for an individual.",
"type":"object",
"properties":{ // this section returns the contents that you have added to the jsonSchema object in the request
}
}
}
回應中的ID代表您已建立的輸入結構描述的唯一識別碼。 從回應中複製ID,因為您將在稍後步驟中重複使用它。
接下來,您必須為匯出設定輸出結構描述。 首先,您需要尋找並檢查現有的合作夥伴結構描述。
要求
請注意,以下範例使用 connection spec ID
適用於Amazon S3。 請以目的地專屬的連線規格ID取代此值。
curl --location --request GET 'https://platform.adobe.io/data/foundation/flowservice/connectionSpecs/4fce964d-3f37-408f-9778-e597338a21ee' \
--header 'x-gw-ims-org-id: {ORG_ID}' \
--header 'x-api-key: {API_KEY}' \
--header 'x-sandbox-name: {SANDBOX_NAME}' \
--header 'Authorization: Bearer {ACCESS_TOKEN}' \
包含範例結構描述的回應
Inspect會回應您執行上述呼叫時所取得的回應。 您必須深入探究回應以尋找物件 targetSpec.attributes.partnerSchema.jsonSchema
{
"title":"defaultschema",
"type":"object",
"properties":{
"attributes":{
"type":"object",
"meta:xdmType":"map",
"additionalProperties":{
"type":"object",
"properties":{
"value":{
"type":"string",
"title":"Value"
}
},
"meta:xdmType":"object"
}
},
"identityMap":{
"type":"object",
"meta:xdmField":"xdm:identityMap",
"meta:xdmType":"map",
"additionalProperties":{
"type":"array",
"items":{
"type":"object",
"properties":{
"id":{
"type":"string",
"title":"Identifier",
"description":"Identity of the consumer in the related namespace.",
"meta:xdmType":"string",
"meta:xdmField":"xdm:id"
},
"primary":{
"type":"boolean",
"title":"Primary",
"default":false,
"description":"Indicates this identity is the preferred identity. Is used as a hint to help systems better organize how identities are queried.",
"meta:xdmType":"boolean",
"meta:xdmField":"xdm:primary"
},
"authenticatedState":{
"enum":[
"ambiguous",
"authenticated",
"loggedOut"
],
"type":"string",
"default":"ambiguous",
"meta:enum":{
"ambiguous":"Ambiguous",
"loggedOut":"User was identified by a login action at some point of time previously, but is not currently logged in.",
"authenticated":"User identified by a login or similar action that was valid at the time of the event observation."
},
"description":"The state this identity is authenticated as for this observed ExperienceEvent.",
"meta:xdmType":"string",
"meta:xdmField":"xdm:authenticatedState"
}
},
"meta:xdmType":"object",
"meta:referencedFrom":"https://ns.adobe.com/xdm/context/identityitem"
},
"meta:xdmType":"array"
}
},
"segmentMembership":{
"title":"Segment membership map",
"type":"object",
"meta:xdmField":"xdm:segmentMembership",
"meta:xdmType":"map",
"additionalProperties":{
"type":"object",
"title":"Segment membership per namespace",
"meta:xdmType":"map",
"additionalProperties":{
"type":"object",
"properties":{
"status":{
"enum":[
"realized",
"exited"
],
"type":"string",
"title":"Status",
"default":"realized",
"meta:enum":{
"exited":"Entity is exiting the segment.",
"realized":"Entity is entering the segment."
},
"description":"Is the audience participation realized as part of the current request.",
"meta:xdmType":"string",
"meta:xdmField":"xdm:status"
},
"payload":{
"type":"object",
"title":"Payload",
"required":[
"payloadType"
],
"properties":{
"payloadType":{
"enum":[
"boolean",
"number",
"propensity",
"string"
],
"type":"string",
"title":"Payload Type",
"meta:enum":{
"number":"Number",
"string":"String",
"boolean":"Boolean",
"propensity":"Propensity"
},
"description":"The type of payload.",
"meta:xdmType":"string",
"meta:xdmField":"xdm:payloadType"
},
"payloadNumberValue":{
"type":"number",
"title":"Value",
"description":"The number.",
"meta:xdmType":"number",
"meta:xdmField":"xdm:payloadNumberValue"
},
"payloadStringValue":{
"type":"string",
"title":"Value",
"description":"The string value.",
"meta:xdmType":"string",
"meta:xdmField":"xdm:payloadStringValue"
},
"payloadBooleanValue":{
"type":"boolean",
"title":"Value",
"description":"The boolean value.",
"meta:xdmType":"boolean",
"meta:xdmField":"xdm:payloadBooleanValue"
},
"payloadPropensityValue":{
"type":"number",
"title":"Value",
"maximum":1,
"description":"The propensity.",
"meta:xdmType":"number",
"meta:xdmField":"xdm:payloadPropensityValue",
"exclusiveMinimum":0
}
},
"description":"Values that are directly related with the audience realization. This payload exists with the same 'validUntil' as the audience realization. Note that the intention is that exactly one payload value be included, as indicated by the payload type. This was originally modeled using 'oneOf', but due to limitations in our tooling that was removed. This more semantically meaningful representation will be re-introduced in the future.",
"meta:xdmType":"object",
"meta:xdmField":"xdm:payload"
},
"version":{
"type":"string",
"title":"Version",
"description":"The version of the audience definition used in this audience assertion. Version can be omitted in audience lists when all memberships versions are the same.",
"meta:xdmType":"string",
"meta:xdmField":"xdm:version"
},
"segmentID":{
"type":"object",
"title":"Segment ID",
"properties":{
"_id":{
"type":"string",
"title":"Identifier",
"format":"uri-reference",
"description":"Identity of the audience in the related namespace.",
"meta:xdmType":"string",
"meta:xdmField":"@id"
},
"xid":{
"type":"string",
"title":"Experience identifier",
"description":"When present, this value represents a cross-namespace identifier that is unique across all namespace-scoped identifiers in all namespaces.",
"meta:xdmType":"string",
"meta:xdmField":"xdm:xid"
},
"namespace":{
"type":"object",
"title":"Namespace",
"required":[
"code"
],
"properties":{
"code":{
"type":"string",
"title":"Code",
"description":"The code is a human readable identifier for the namespace and can be used to request the technical namespace id which is used for identity graph processing.",
"meta:xdmType":"string",
"meta:xdmField":"xdm:code"
}
},
"description":"The namespace associated with the `xid` attribute.",
"meta:xdmType":"object",
"meta:xdmField":"xdm:namespace",
"meta:referencedFrom":"https://ns.adobe.com/xdm/context/namespace"
}
},
"description":"The identity of the audience or snapshot definition in with the domain of the specific system that processes that type of segment. Deprecated.",
"meta:status":"deprecated",
"meta:xdmType":"object",
"meta:xdmField":"xdm:segmentID",
"meta:referencedFrom":"https://ns.adobe.com/xdm/context/segmentidentity"
},
"validUntil":{
"type":"string",
"title":"Valid until",
"format":"date-time",
"description":"The timestamp for when the audienceassertion should no longer be assumed to be valid and should either be ignored or revalidated.",
"meta:xdmType":"date-time",
"meta:xdmField":"xdm:validUntil"
},
"profileStitchID":{
"type":"object",
"properties":{
"_id":{
"type":"string",
"title":"Identifier",
"format":"uri-reference",
"description":"Identity of the profile stitch in the related namespace.",
"meta:xdmType":"string",
"meta:xdmField":"@id"
},
"xid":{
"type":"string",
"title":"Experience identifier",
"description":"When present, this value represents a cross-namespace identifier that is unique across all namespace-scoped identifiers in all namespaces.",
"meta:xdmType":"string",
"meta:xdmField":"xdm:xid"
},
"namespace":{
"type":"object",
"title":"Namespace",
"required":[
"code"
],
"properties":{
"code":{
"type":"string",
"title":"Code",
"description":"The code is a human readable identifier for the namespace and can be used to request the technical namespace id which is used for identity graph processing.",
"meta:xdmType":"string",
"meta:xdmField":"xdm:code"
}
},
"description":"The namespace associated with the `xid` attribute.",
"meta:xdmType":"object",
"meta:xdmField":"xdm:namespace",
"meta:referencedFrom":"https://ns.adobe.com/xdm/context/namespace"
}
},
"meta:xdmType":"object",
"meta:xdmField":"xdm:profileStitchID",
"meta:referencedFrom":"https://ns.adobe.com/xdm/context/profileStitchIdentity"
},
"lastQualificationTime":{
"type":"string",
"title":"Last qualification time",
"format":"date-time",
"description":"The timestamp when the assertion of audience membership was made.",
"meta:xdmType":"date-time",
"meta:xdmField":"xdm:lastQualificationTime"
}
},
"meta:xdmType":"object",
"meta:referencedFrom":"https://ns.adobe.com/xdm/context/segmentmembership"
}
}
}
}
}
接下來,您需要建立輸出結構描述。 複製您上述的JSON回應,並將其貼到 jsonSchema
物件。
要求
curl --location --request POST 'https://platform.adobe.io/data/foundation/conversion/schemas' \
--header 'x-api-key: {API_KEY}' \
--header 'x-gw-ims-org-id: {ORG_ID}' \
--header 'x-sandbox-name: {SANDBOX_NAME}' \
--header 'Authorization: Bearer TOKEN' \
--header 'Content-Type: application/json' \
--data-raw '{
"name": "Sample Schema for Flow Mapping",
"jsonSchema":{...insert JSON from the response above here}
}
'
回應
{
"id": "2f4fd51934c1409fb1d8207dd9f43dc9",
"version": 0,
"jsonSchema": {
"title": "defaultschema",
"type": "object",
"properties": {
"identityMap": {
"type": "object",
"meta:xdmField": "xdm:identityMap",
"meta:xdmType": "map",
"additionalProperties": {
"meta:xdmType": "array",
"items": {
"meta:referencedFrom": "https://ns.adobe.com/xdm/context/identityitem",
"properties": {
"primary": {
"meta:xdmField": "xdm:primary",
"meta:xdmType": "boolean",
"description": "Indicates this identity is the preferred identity. Is used as a hint to help systems better organize how identities are queried.",
"default": false,
"type": "boolean",
"title": "Primary"
},
"id": {
"meta:xdmField": "xdm:id",
"meta:xdmType": "string",
"description": "Identity of the consumer in the related namespace.",
"type": "string",
"title": "Identifier"
},
"authenticatedState": {
"meta:xdmField": "xdm:authenticatedState",
"meta:xdmType": "string",
"meta:enum": {
"loggedOut": "User was identified by a login action at some point of time previously, but is not currently logged in.",
"authenticated": "User identified by a login or similar action that was valid at the time of the event observation.",
"ambiguous": "Ambiguous"
},
"enum": [
"ambiguous",
"authenticated",
"loggedOut"
],
"default": "ambiguous",
"type": "string",
"description": "The state this identity is authenticated as for this observed ExperienceEvent."
}
},
"meta:xdmType": "object",
"type": "object"
},
"type": "array"
}
},
"segmentMembership": {
"title": "Segment membership map",
"type": "object",
"meta:xdmField": "xdm:segmentMembership",
"meta:xdmType": "map",
"additionalProperties": {
"additionalProperties": {
"meta:referencedFrom": "https://ns.adobe.com/xdm/context/segmentmembership",
"properties": {
"version": {
"meta:xdmField": "xdm:version",
"meta:xdmType": "string",
"description": "The version of the audience definition used in this audience assertion. Version can be omitted in audience lists when all memberships versions are the same.",
"type": "string",
"title": "Version"
},
"validUntil": {
"meta:xdmField": "xdm:validUntil",
"meta:xdmType": "date-time",
"description": "The timestamp for when the audienceassertion should no longer be assumed to be valid and should either be ignored or revalidated.",
"format": "date-time",
"type": "string",
"title": "Valid until"
},
"status": {
"meta:xdmField": "xdm:status",
"meta:xdmType": "string",
"meta:enum": {
"exited": "Entity is exiting the segment.",
"realized": "Entity is entering the segment."
},
"enum": [
"realized",
"exited"
],
"default": "realized",
"description": "Is the audience participation realized as part of the current request.",
"type": "string",
"title": "Status"
},
"segmentID": {
"meta:xdmField": "xdm:segmentID",
"meta:referencedFrom": "https://ns.adobe.com/xdm/context/segmentidentity",
"properties": {
"xid": {
"meta:xdmField": "xdm:xid",
"meta:xdmType": "string",
"description": "When present, this value represents a cross-namespace identifier that is unique across all namespace-scoped identifiers in all namespaces.",
"type": "string",
"title": "Experience identifier"
},
"namespace": {
"meta:xdmField": "xdm:namespace",
"required": [
"code"
],
"meta:referencedFrom": "https://ns.adobe.com/xdm/context/namespace",
"properties": {
"code": {
"meta:xdmField": "xdm:code",
"meta:xdmType": "string",
"description": "The code is a human readable identifier for the namespace and can be used to request the technical namespace id which is used for identity graph processing.",
"type": "string",
"title": "Code"
}
},
"meta:xdmType": "object",
"type": "object",
"description": "The namespace associated with the `xid` attribute.",
"title": "Namespace"
},
"_id": {
"meta:xdmField": "@id",
"meta:xdmType": "string",
"description": "Identity of the audience in the related namespace.",
"format": "uri-reference",
"type": "string",
"title": "Identifier"
}
},
"meta:xdmType": "object",
"type": "object",
"description": "The identity of the audience or snapshot definition in with the domain of the specific system that processes that type of segment. Deprecated.",
"meta:status": "deprecated",
"title": "Segment ID"
},
"profileStitchID": {
"meta:xdmField": "xdm:profileStitchID",
"meta:referencedFrom": "https://ns.adobe.com/xdm/context/profileStitchIdentity",
"properties": {
"xid": {
"meta:xdmField": "xdm:xid",
"meta:xdmType": "string",
"description": "When present, this value represents a cross-namespace identifier that is unique across all namespace-scoped identifiers in all namespaces.",
"type": "string",
"title": "Experience identifier"
},
"namespace": {
"meta:xdmField": "xdm:namespace",
"required": [
"code"
],
"meta:referencedFrom": "https://ns.adobe.com/xdm/context/namespace",
"properties": {
"code": {
"meta:xdmField": "xdm:code",
"meta:xdmType": "string",
"description": "The code is a human readable identifier for the namespace and can be used to request the technical namespace id which is used for identity graph processing.",
"type": "string",
"title": "Code"
}
},
"meta:xdmType": "object",
"type": "object",
"description": "The namespace associated with the `xid` attribute.",
"title": "Namespace"
},
"_id": {
"meta:xdmField": "@id",
"meta:xdmType": "string",
"description": "Identity of the profile stitch in the related namespace.",
"format": "uri-reference",
"type": "string",
"title": "Identifier"
}
},
"meta:xdmType": "object",
"type": "object"
},
"payload": {
"meta:xdmField": "xdm:payload",
"meta:xdmType": "object",
"required": [
"payloadType"
],
"properties": {
"payloadType": {
"meta:xdmField": "xdm:payloadType",
"meta:xdmType": "string",
"description": "The type of payload.",
"meta:enum": {
"string": "String",
"propensity": "Propensity",
"number": "Number",
"boolean": "Boolean"
},
"enum": [
"boolean",
"number",
"propensity",
"string"
],
"type": "string",
"title": "Payload Type"
},
"payloadStringValue": {
"meta:xdmField": "xdm:payloadStringValue",
"meta:xdmType": "string",
"description": "The string value.",
"type": "string",
"title": "Value"
},
"payloadPropensityValue": {
"meta:xdmField": "xdm:payloadPropensityValue",
"meta:xdmType": "number",
"maximum": 1,
"exclusiveMinimum": 0,
"description": "The propensity.",
"type": "number",
"title": "Value"
},
"payloadNumberValue": {
"meta:xdmField": "xdm:payloadNumberValue",
"meta:xdmType": "number",
"description": "The number.",
"type": "number",
"title": "Value"
},
"payloadBooleanValue": {
"meta:xdmField": "xdm:payloadBooleanValue",
"meta:xdmType": "boolean",
"description": "The boolean value.",
"type": "boolean",
"title": "Value"
}
},
"type": "object",
"description": "Values that are directly related with the audience realization. This payload exists with the same 'validUntil' as the audience realization. Note that the intention is that exactly one payload value be included, as indicated by the payload type. This was originally modeled using 'oneOf', but due to limitations in our tooling that was removed. This more semantically meaningful representation will be re-introduced in the future.",
"title": "Payload"
},
"lastQualificationTime": {
"meta:xdmField": "xdm:lastQualificationTime",
"meta:xdmType": "date-time",
"description": "The timestamp when the assertion of audience membership was made.",
"format": "date-time",
"type": "string",
"title": "Last qualification time"
}
},
"meta:xdmType": "object",
"type": "object"
},
"meta:xdmType": "map",
"type": "object",
"title": "Segment membership per namespace"
}
},
"attributes": {
"type": "object",
"meta:xdmType": "map",
"additionalProperties": {
"properties": {
"value": {
"type": "string",
"title": "Value"
}
},
"meta:xdmType": "object",
"type": "object"
}
},
"firstName": {
"title": "firstName",
"type": "string"
},
"Email": {
"title": "Email",
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"title": "id",
"type": "string",
"meta:xdmType": "string"
}
},
"meta:xdmType": "object"
},
"meta:xdmType": "array"
}
}
}
}
回應中的ID代表您已建立的輸入結構描述的唯一識別碼。 從回應中複製ID,因為您將在稍後步驟中重複使用它。
接下來,使用 資料準備API 使用輸入結構描述ID、輸出結構描述ID和所需的欄位對應來建立對應集。
要求
destination
引數不接受點 "."
. 例如,您需要使用personalEmail_address或segmentMembership_status ,如設定範例中反白顯示的。//
,如下方醒目提示之處。Email
和 Phone_E.164
,則每個資料流只能匯出一個identity屬性。curl --location --request POST 'https://platform.adobe.io/data/foundation/conversion/mappingSets' \
--header 'x-api-key: {API_KEY}' \
--header 'x-gw-ims-org-id: {ORG_ID}' \
--header 'x-sandbox-name: {SANDBOX_NAME}' \
--header 'Authorization: Bearer TOKEN' \
--header 'Content-Type: application/json' \
--data-raw '{
"inputSchema": {
"id": "81d7fc5376e54eb58d5186fd30d5a8c9"
},
"outputSchema": {
"id": "2f4fd51934c1409fb1d8207dd9f43dc9"
},
"mappings": [
{
"destination": "firstName",
"source": "person.name.firstName",
"sourceType": "ATTRIBUTE"
},
{
"destination": "Email",
"source": "identityMap.Email",
"sourceType": "ATTRIBUTE"
},
{
"destination": "Phone_E_164",
"source": "identityMap.Phone_E//.164",
"sourceType": "ATTRIBUTE"
},
{
"destination": "personalEmail_address",
"source": "personalEmail.address",
"sourceType": "ATTRIBUTE"
},
{
"destination": "segmentMembership_status",
"source": "segmentMembership.ups.seg_id.status",
"sourceType": "ATTRIBUTE"
}
],
"xdmVersion": "1.0"
}'
回應
{
"id": "5f0031f8ccd4444dac9c5c391389e9e8",
"version": 0,
"createdDate": 1678999005197,
"modifiedDate": 1678999005197,
"createdBy": "example@AdobeID",
"modifiedBy": "example@AdobeID"
}
記下對應集的ID,因為您會在使用對應集ID更新現有資料流的下一個步驟中需要它。
接下來,取得您要更新之資料流的ID。
另請參閱 擷取目的地資料流的詳細資訊 以取得關於擷取資料流ID的資訊。
最後,您需要將資料流PATCH為您剛剛建立的對應集資訊。
要求
curl --location --request PATCH 'https://platform.adobe.io/data/foundation/flowservice/flows/df8245a8-dd8f-42da-a04a-2d3a92654d9e' \
--header 'x-api-key: {API_KEY}' \
--header 'x-gw-ims-org-id: {ORG_ID}' \
--header 'x-sandbox-name: {SANDBOX_NAME}' \
--header 'Authorization: Bearer {ACCESS_TOKEN}' \
--header 'If-Match: ETAG_HERE' \
--data-raw '[
{
"op":"ADD",
"path":"/transformations/0/params/profileMapping",
"value":{
"mappingId":"304ca6a2fff244949c956cad1cd9eae6",
"mappingVersion":0
}
}
]'
回應
來自流程服務API的回應會傳回已更新資料流的ID。
{
"id": "1c246ae4-ba0d-43cd-a0ec-f16fe0a56b55",
"etag": "\"1500c67f-0000-0200-0000-64137ee00000\""
}
若要對資料流進行任何更新,請使用 PATCH
操作。例如,您可以更新資料流,以選取欄位作為必要索引鍵或重複資料刪除索引鍵。
若要新增 強制索引鍵,請參閱以下的請求和回應範例
要求
curl --location --request PATCH 'https://platform.adobe.io/data/foundation/flowservice/runs?property=flowId==eb54b3b3-3949-4f12-89c8-64eafaba858f' \
--header 'accept: application/json' \
--header 'x-api-key: {API_KEY}' \
--header 'x-gw-ims-org-id: {ORG_ID}' \
--header 'x-sandbox-name: {SANDBOX_NAME}' \
--header 'Authorization: Bearer {ACCESS_TOKEN}' \
--data-raw '
[
{
"op": "add",
"path": "/transformations/0/params/mandatoryFields",
"value": [
"GAID"
]
}
]'
curl --location --request PATCH 'https://platform.adobe.io/data/foundation/flowservice/runs?property=flowId==eb54b3b3-3949-4f12-89c8-64eafaba858f' \
--header 'accept: application/json' \
--header 'x-api-key: {API_KEY}' \
--header 'x-gw-ims-org-id: {ORG_ID}' \
--header 'x-sandbox-name: {SANDBOX_NAME}' \
--header 'Authorization: Bearer {ACCESS_TOKEN}' \
--data-raw '
[
{
"op": "add",
"path": "/transformations/0/params/mandatoryFields",
"value": [
"GAID"
]
}
]'
回應
{
"id": "eb54b3b3-3949-4f12-89c8-64eafaba858f",
"etag": "\"0000d781-0000-0200-0000-63e29f420000\""
}
若要新增 重複資料刪除索引鍵,請參閱以下的請求和回應範例
要求
curl --location --request PATCH 'https://platform.adobe.io/data/foundation/flowservice/runs?property=flowId==eb54b3b3-3949-4f12-89c8-64eafaba858f' \
--header 'accept: application/json' \
--header 'x-api-key: {API_KEY}' \
--header 'x-gw-ims-org-id: {ORG_ID}' \
--header 'x-sandbox-name: {SANDBOX_NAME}' \
--header 'Authorization: Bearer {ACCESS_TOKEN}' \
--data-raw '
[
{
"op": "add",
"path": "/transformations/0/params/primaryFields",
"value": [
{
"identityNamespace": "GAID",
"fieldType": "IDENTITY"
}
]
}
]'
curl --location --request PATCH 'https://platform.adobe.io/data/foundation/flowservice/runs?property=flowId==eb54b3b3-3949-4f12-89c8-64eafaba858f' \
--header 'accept: application/json' \
--header 'x-api-key: {API_KEY}' \
--header 'x-gw-ims-org-id: {ORG_ID}' \
--header 'x-sandbox-name: {SANDBOX_NAME}' \
--header 'Authorization: Bearer {ACCESS_TOKEN}' \
--data-raw '
[
{
"op": "add",
"path": "/transformations/0/params/primaryFields",
"value": [
{
"identityNamespace": "GAID",
"fieldType": "IDENTITY"
}
]
}
]'
回應
{
"id": "eb54b3b3-3949-4f12-89c8-64eafaba858f",
"etag": "\"0000d781-0000-0200-0000-63e29f420000\""
}
若要檢查資料流的執行,請使用資料流執行API:
要求
curl --location --request GET 'https://platform.adobe.io/data/foundation/flowservice/runs?property=flowId==eb54b3b3-3949-4f12-89c8-64eafaba858f' \
--header 'accept: application/json' \
--header 'x-api-key: {API_KEY}' \
--header 'x-gw-ims-org-id: {ORG_ID}' \
--header 'x-sandbox-name: {SANDBOX_NAME}' \
--header 'Authorization: Bearer {ACCESS_TOKEN}' \
--data-raw ''
回應
{
"items": [
{
"id": "4b7728dd-83c9-4c38-95a4-24ddab545404",
"createdAt": 1675807718296,
"updatedAt": 1675807731834,
"createdBy": "aep_activation_batch@AdobeID",
"updatedBy": "acp_foundation_connectors@AdobeID",
"createdClient": "aep_activation_batch",
"updatedClient": "acp_foundation_connectors",
"sandboxId": "7dfdcd30-0a09-11ea-8ea6-7bf93ce86c28",
"sandboxName": "sand-1",
"imsOrgId": "5555467B5D8013E50A494220@AdobeOrg",
"flowId": "aae5ec63-b0ac-4808-9a44-abf2ea67bd5a",
"flowSpec": {
"id": "615d3489-36d2-4671-9467-4ae1129facd3",
"version": "1.0"
},
"providerRefId": "ba56f98e0c49b572adb249980c39b1c7",
"etag": "\"08005e9e-0000-0200-0000-63e2cbf30000\"",
"metrics": {
"durationSummary": {
"startedAtUTC": 1675807719411,
"completedAtUTC": 1675807719416
},
"sizeSummary": {
"inputBytes": 0
},
"recordSummary": {
"inputRecordCount": 0,
"skippedRecordCount": 0,
"sourceSummaries": [
{
"id": "ea2b1205-4692-49de-b448-ebf75b1d188a",
"inputRecordCount": 0,
"skippedRecordCount": 0,
"entitySummaries": [
{
//...
您可在此找到關於 資料流執行API傳回的各種引數 API參考檔案中。
本教學課程中的API端點會遵循一般Experience PlatformAPI錯誤訊息原則。 請參閱 API狀態代碼 和 請求標頭錯誤 (位於平台疑難排解指南中),以取得有關解譯錯誤回應的詳細資訊。
依照本教學課程中的指示,您已成功將Platform連線至其中一個慣用的雲端儲存空間目的地,並設定資料流至個別目的地以匯出對象。 如需詳細資訊,請參閱下列頁面,例如如何使用流量服務API編輯現有資料流: