建立 使用 Flow Service API

在完成此模板時,替換或刪除斜體中的所有段落(從此段開始)。

首先更新頁面頂部的元資料(標題和說明)。 請忽略此頁上的所有DNL實例。 這是一個標籤,它幫助我們的機器翻譯流程將頁面正確翻譯成我們支援的多種語言。 在您提交文檔後,我們將向其添加標籤。

總覽

提供您公司的簡短概述,包括它為客戶提供的價值。 包括指向產品文檔首頁的連結以供進一步閱讀。

重要

此文檔頁面由 團隊。 如有任何查詢或更新請求,請直接聯繫他們,地址為: 插入連結或電子郵件地址,可以在其中獲取更新

先決條件

在本節中添加有關客戶在開始在Adobe Experience Platform用戶介面中設定源之前需要瞭解的任何資訊。 這可以是:

  • 需要添加到允許清單
  • 電子郵件散列要求
  • 任何有關您的帳戶的詳細資訊
  • 如何獲取API密鑰以連接到您的平台

收集所需憑據

為了連接 要Experience Platform,必須為以下連接屬性提供值:

憑據 說明 範例
憑據 請在此處為源的身份驗證憑據添加簡短說明 請在此處添加源的身份驗證憑據示例
憑證 請在此處為源的身份驗證憑據添加簡短說明 請在此處添加源的身份驗證憑據示例
證書三 請在此處為源的身份驗證憑據添加簡短說明 請在此處添加源的身份驗證憑據示例

有關這些憑據的詳細資訊,請參見 驗證文檔。 請在此處添加平台驗證文檔的連結

連接 到使用 Flow Service API

以下教程將指導您完成建立 源連接並建立資料流,以便 資料到平台 Flow Service API

建立基本連接

基本連接將保留源和平台之間的資訊,包括源的驗證憑據、連接的當前狀態和唯一的基本連接ID。 基本連接ID允許您從源中瀏覽和導航檔案,並標識要攝取的特定項目,包括有關其資料類型和格式的資訊。

要建立基本連接ID,請向 /connections 提供端點 身份驗證憑據作為請求正文的一部分。

API格式

POST /connections

要求

以下請求為 :

curl -X POST \
    'https://platform.adobe.io/data/foundation/flowservice/connections' \
    -H 'Authorization: Bearer {ACCESS_TOKEN}' \
    -H 'x-api-key: {API_KEY}' \
    -H 'x-gw-ims-org-id: {ORG_ID}' \
    -H 'x-sandbox-name: {SANDBOX_NAME}' \
    -H 'Content-Type: application/json' \
    -d '{
        "name": "{YOURSOURCE} base connection",
        "description": "{YOURSOURCE} base connection to authenticate to Platform",
        "connectionSpec": {
            "id": "6360f136-5980-4111-8bdf-15d29eab3b5a",
            "version": "1.0"
        },
        "auth": {
            "specName": "OAuth generic-rest-connector",
            "params": {
                "accessToken": "{ACCESS_TOKEN}",
                "refreshToken": "{REFRESH_TOKEN}",
                "expirationDate": "{EXPIRATION_DATE}"
            }
        }
    }'
屬性 說明
name 基本連接的名稱。 確保基本連接的名稱是描述性的,因為您可以使用此名稱查找有關基本連接的資訊。
description 可以包括的可選值,用於提供有關基本連接的詳細資訊。
connectionSpec.id 源的連接規範ID。 在通過註冊和批准源後,可以檢索此ID Flow Service API。
auth.specName 用於將源驗證到平台的驗證類型。
auth.params. 包含驗證源所需的憑據。

回應

成功的響應返回新建立的基本連接,包括其唯一連接標識符(id)。 在下一步中瀏覽源的檔案結構和內容需要此ID。

{
     "id": "70383d02-2777-4be7-a309-9dd6eea1b46d",
     "etag": "\"d64c8298-add4-4667-9a49-28195b2e2a84\""
}

瀏覽源

使用上一步中生成的基本連接ID,可以通過執行GET請求來瀏覽檔案和目錄。
使用以下調用查找要插入的檔案的路徑 Platform:

API格式

GET /connections/{BASE_CONNECTION_ID}/explore?objectType=rest&object={OBJECT}&fileType={FILE_TYPE}&preview={PREVIEW}&sourceParams={SOURCE_PARAMS}

執行GET請求以瀏覽源的檔案結構和內容時,必須包括下表中列出的查詢參數:

參數 說明
{BASE_CONNECTION_ID} 在上一步中生成的基本連接ID。
objectType=rest 要瀏覽的對象的類型。 當前,此值始終設定為 rest
{OBJECT} 僅當查看特定目錄時才需要此參數。 其值表示要瀏覽的目錄的路徑。
fileType=json 要帶到平台的檔案的檔案類型。 目前, json 是唯一支援的檔案類型。
{PREVIEW} 一個布爾值,它定義連接的內容是否支援預覽。
{SOURCE_PARAMS} 定義要帶到平台的源檔案的參數。 檢索接受的格式類型 {SOURCE_PARAMS},您必須對整個 list_id base64中的字串。 在下面的示例中, "list_id": "10c097ca71" 編碼為base64等於 eyJsaXN0SWQiOiIxMGMwOTdjYTcxIn0=

要求

curl -X GET \
    'https://platform.adobe.io/data/foundation/flowservice/connections/70383d02-2777-4be7-a309-9dd6eea1b46d/explore?objectType=rest&object=json&fileType=json&preview=true&sourceParams=eyJsaXN0SWQiOiIxMGMwOTdjYTcxIn0=' \
    -H 'Authorization: Bearer {ACCESS_TOKEN}' \
    -H 'x-api-key: {API_KEY}' \
    -H 'x-gw-ims-org-id: {ORG_ID}' \
    -H 'x-sandbox-name: {SANDBOX_NAME}'

回應

成功的響應返回查詢檔案的結構。

{
  "data": [
    {
      "members": [
        {
          "id": "cff65fb4c5f5828666ad846443720efd",
          "email_address": "roykent@gmail.com",
          "unique_email_id": "72c758cbf1",
          "full_name": "Roy Kent",
          "web_id": 547094062,
          "email_type": "html",
          "status": "subscribed",
          "merge_fields": {
            "FNAME": "Roy",
            "LNAME": "Kent",
            "ADDRESS": {
              "addr1": "",
              "addr2": "",
              "city": "Richmond",
              "state": "Virginia",
              "zip": "",
              "country": "US"
            },
            "PHONE": "",
            "BIRTHDAY": ""
          },
          "stats": {
            "avg_open_rate": 0,
            "avg_click_rate": 0
          },
          "ip_signup": "",
          "timestamp_signup": "",
          "ip_opt": "103.43.112.97",
          "timestamp_opt": "2021-06-01T15:31:36+00:00",
          "member_rating": 2,
          "last_changed": "2021-06-01T15:31:36+00:00",
          "language": "",
          "vip": false,
          "email_client": "",
          "location": {
            "latitude": 0,
            "longitude": 0,
            "gmtoff": 0,
            "dstoff": 0,
            "country_code": "",
            "timezone": ""
          },
          "source": "Admin Add",
          "tags_count": 0,
          "tags": [

          ],
          "list_id": "10c097ca71"
        }
      ],
      "list_id": "10c097ca71",
      "total_items": 2,
      "_links": [
        {
          "rel": "self",
          "href": "https://us6.api.mailchimp.com/3.0/lists/10c097ca71/members",
          "method": "GET",
          "targetSchema": "https://us6.api.mailchimp.com/schema/3.0/Definitions/Lists/Members/CollectionResponse.json",
          "schema": "https://us6.api.mailchimp.com/schema/3.0/Paths/Lists/Members/Collection.json"
        },
        {
          "rel": "parent",
          "href": "https://us6.api.mailchimp.com/3.0/lists/10c097ca71",
          "method": "GET",
          "targetSchema": "https://us6.api.mailchimp.com/schema/3.0/Definitions/Lists/Members/Response.json"
        },
        {
          "rel": "create",
          "href": "https://us6.api.mailchimp.com/3.0/lists/10c097ca71/members",
          "method": "POST",
          "targetSchema": "https://us6.api.mailchimp.com/schema/3.0/Definitions/Lists/Members/Response.json",
          "schema": "https://us6.api.mailchimp.com/schema/3.0/Definitions/Lists/Members/POST.json"
        }
      ]
    }
  ]
}

建立源連接

您可以通過向POST請求建立源連接 Flow Service API。 源連接由連接ID、源資料檔案的路徑和連接規範ID組成。

API格式

POST /sourceConnections

要求

以下請求為 :

curl -X POST \
    'https://platform.adobe.io/data/foundation/flowservice/sourceConnections' \
    -H 'Authorization: Bearer {ACCESS_TOKEN}' \
    -H 'x-api-key: {API_KEY}' \
    -H 'x-gw-ims-org-id: {ORG_ID}' \
    -H 'x-sandbox-name: {SANDBOX_NAME}' \
    -H 'Content-Type: application/json' \
    -d '{
        "name": "{YOURSOURCE} Source Connection",
        "description": "{YOURSOURCE} Source Connection",
        "baseConnectionId": "70383d02-2777-4be7-a309-9dd6eea1b46d",
        "connectionSpec": {
            "id": "6360f136-5980-4111-8bdf-15d29eab3b5a",
            "version": "1.0"
        },
        "data": {
            "format": "json"
        },
        "params": {
            "server": "us6",
            "listId": "10c097ca71"
        }
    }'
屬性 說明
name 源連接的名稱。 確保源連接的名稱是描述性的,因為您可以使用它來查找有關源連接的資訊。
description 可以包括的可選值,用於提供有關源連接的詳細資訊。
baseConnectionId 基本連接ID 。 此ID是在前一步驟中生成的。
connectionSpec.id 與源對應的連接規範ID。
data.format 格式 要攝取的資料。 目前,唯一支援的資料格式是 json

回應

成功的響應返回唯一標識符(id)。 在後續步驟中建立資料流時需要此ID。

{
     "id": "246d052c-da4a-494a-937f-a0d17b1c6cf5",
     "etag": "\"712a8c08-fda7-41c2-984b-187f823293d8\""
}

建立目標XDM架構

為了在平台中使用源資料,必須建立目標架構以根據您的需要來構造源資料。 然後使用目標模式建立包含源資料的平台資料集。

通過執行對目標XDM的POST請求,可以建立目標XDM模式 架構註冊表API

有關如何建立目標XDM架構的詳細步驟,請參見上的教程 使用API建立架構

建立目標資料集

通過對目標資料集執行POST請求,可以建立目標資料集 目錄服務API,提供負載內目標架構的ID。

有關如何建立目標資料集的詳細步驟,請參見上的教程 使用API建立資料集

建立目標連接

目標連接表示到要儲存所攝取資料的目的地的連接。 要建立目標連接,必須提供與 Data Lake。 此ID為: c604ff05-7f1a-43c0-8e18-33bf874cb11c

您現在將唯一標識符作為目標模式和目標資料集,並將連接規範ID Data Lake。 使用這些標識符,可以使用 Flow Service API,用於指定將包含入站源資料的資料集。

API格式

POST /targetConnections

要求

以下請求為 :

curl -X POST \
    'https://platform.adobe.io/data/foundation/flowservice/targetConnections' \
    -H 'Authorization: Bearer {ACCESS_TOKEN}' \
    -H 'x-api-key: {API_KEY}' \
    -H 'x-gw-ims-org-id: {ORG_ID}' \
    -H 'x-sandbox-name: {SANDBOX_NAME}' \
    -H 'Content-Type: application/json' \
    -d '{
        "name": "{YOURSOURCE} Target Connection",
        "description": "{YOURSOURCE} Target Connection",
        "connectionSpec": {
            "id": "c604ff05-7f1a-43c0-8e18-33bf874cb11c",
            "version": "1.0"
        },
        "data": {
            "format": "json"
        },
        "params": {
            "dataSetId": "5ef4551c52e054191a61a99f"
        }
    }'
屬性 說明
name 目標連接的名稱。 確保目標連接的名稱是描述性的,因為您可以使用此名稱查找有關目標連接的資訊。
description 可以包括的可選值,用於提供有關目標連接的詳細資訊。
connectionSpec.id 與 Data Lake。 此固定ID為: c604ff05-7f1a-43c0-8e18-33bf874cb11c
data.format 格式 要帶到平台的資料。
params.dataSetId 在上一步中檢索到的目標資料集ID。

回應

成功的響應返回新目標連接的唯一標識符(id)。 後續步驟中需要此ID。

{
     "id": "7c96c827-3ffd-460c-a573-e9558f72f263",
     "etag": "\"a196f685-f5e8-4c4c-bfbd-136141bb0c6d\""
}

建立映射

為了將源資料攝取到目標資料集中,必須首先將其映射到目標資料集所遵循的目標模式。 這通過執行POST請求來實現 Data Prep API 在請求負載中定義資料映射。

API格式

POST /conversion/mappingSets

要求

curl -X POST \
    'https://platform.adobe.io/data/foundation/conversion/mappingSets' \
    -H 'Authorization: Bearer {ACCESS_TOKEN}' \
    -H 'x-api-key: {API_KEY}' \
    -H 'x-gw-ims-org-id: {ORG_ID}' \
    -H 'x-sandbox-name: {SANDBOX_NAME}' \
    -H 'Content-Type: application/json' \
    -d '{
        "version": 0,
        "xdmSchema": "https://ns.adobe.com/{TENANT_ID}/schemas/995dabbea86d58e346ff91bd8aa741a9f36f29b1019138d4",
        "xdmVersion": "1.0",
        "id": null,
        "mappings": [
            {
                "destinationXdmPath": "_id",
                "sourceAttribute": "Id",
                "identity": false,
                "identityGroup": null,
                "namespaceCode": null,
                "version": 0
            },
            {
                "destinationXdmPath": "person.name.firstName",
                "sourceAttribute": "FirstName",
                "identity": false,
                "identityGroup": null,
                "namespaceCode": null,
                "version": 0
            },
            {
                "destinationXdmPath": "person.name.lastName",
                "sourceAttribute": "LastName",
                "identity": false,
                "identityGroup": null,
                "namespaceCode": null,
                "version": 0
            }
        ]
    }'
屬性 說明
xdmSchema 的ID 目標XDM架構 生成。
mappings.destinationXdmPath 要映射源屬性的目標XDM路徑。
mappings.sourceAttribute 需要映射到目標XDM路徑的源屬性。
mappings.identity 一個布爾值,它指定是否將映射集標籤為 Identity Service。

回應

成功的響應返回新建立的映射的詳細資訊,包括其唯一標識符(id)。 在後續步驟中建立資料流時需要此值。

{
    "id": "bf5286a9c1ad4266baca76ba3adc9366",
    "version": 0,
    "createdDate": 1597784069368,
    "modifiedDate": 1597784069368,
    "createdBy": "{CREATED_BY}",
    "modifiedBy": "{MODIFIED_BY}"
}

建立流

向從 平台是建立資料流。 現在,您準備了以下必需值:

資料流負責從源調度和收集資料。 通過在負載中提供先前提到的值的同時執行POST請求,可以建立資料流。

要計畫攝取,必須首先將開始時間值設定為劃時代(秒)。 然後,必須將頻率值設定為以下五個選項之一: onceminutehourdayweek。 該間隔值指定兩個連續接收之間的期間,但建立一次性接收不需要設定間隔。 對於所有其它頻率,間隔值必須設定為等於或大於 15

API格式

POST /flows

要求

curl -X POST \
    'https://platform.adobe.io/data/foundation/flowservice/flows' \
    -H 'x-api-key: {API_KEY}' \
    -H 'x-gw-ims-org-id: {ORG_ID}' \
    -H 'x-sandbox-name: {SANDBOX_NAME}' \
    -H 'Content-Type: application/json' \
    -d '{
        "name": "{YOURSOURCE} dataflow",
        "description": "{YOURSOURCE} dataflow",
        "flowSpec": {
            "id": "6499120c-0b15-42dc-936e-847ea3c24d72",
            "version": "1.0"
        },
        "sourceConnectionIds": [
            "246d052c-da4a-494a-937f-a0d17b1c6cf5"
        ],
        "targetConnectionIds": [
            "7c96c827-3ffd-460c-a573-e9558f72f263"
        ],
        "transformations": [
            {
                "name": "Mapping",
                "params": {
                    "mappingId": "bf5286a9c1ad4266baca76ba3adc9366",
                    "mappingVersion": "0"
                }
            }
        ],
        "scheduleParams": {
            "startTime": "1625040887",
            "frequency": "minute",
            "interval": 15
        }
    }'
屬性 說明
name 資料流的名稱。 確保資料流的名稱是描述性的,因為您可以使用此名稱查找有關資料流的資訊。
description 可以包括的可選值,用於提供有關資料流的詳細資訊。
flowSpec.id 建立資料流所需的流規範ID。 此固定ID為: 6499120c-0b15-42dc-936e-847ea3c24d72
flowSpec.version 流規範ID的相應版本。 此值預設為 1.0
sourceConnectionIds 源連接ID 生成。
targetConnectionIds 目標連接ID 生成。
transformations 此屬性包含需要應用於資料的各種轉換。 將不符合XDM的資料帶入平台時需要此屬性。
transformations.name 分配給轉換的名稱。
transformations.params.mappingId 映射ID 生成。
transformations.params.mappingVersion 映射ID的相應版本。 此值預設為 0
scheduleParams.startTime 此屬性包含有關資料流的接收調度的資訊。
scheduleParams.frequency 資料流收集資料的頻率。 可接受值包括: onceminutehourdayweek
scheduleParams.interval 該間隔指定兩個連續流運行之間的期間。 間隔的值應為非零整數。 頻率設定為時不需要間隔 once 應大於或等於 15 其他頻率值。

回應

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

{
     "id": "993f908f-3342-4d9c-9f3c-5aa9a189ca1a",
     "etag": "\"510bb1d4-8453-4034-b991-ab942e11dd8a\""
}

附錄

以下部分提供了有關可以監視、更新和刪除資料流的步驟的資訊。

監視資料流

建立資料流後,您可以監視正在通過其接收的資料,以查看有關流運行、完成狀態和錯誤的資訊。 有關完整的API示例,請閱讀上的指南 使用API監視源資料流

更新資料流

通過向發出PATCH請求來更新資料流的詳細資訊,如其名稱和說明,以及其運行計畫和關聯映射集 /flows 端點 Flow Service API,同時提供資料流的ID。 發出PATCH請求時,必須提供資料流的唯一性 etagIf-Match 標題。 有關完整的API示例,請閱讀上的指南 使用API更新源資料流

更新帳戶

通過執行對的PATCH請求,更新源帳戶的名稱、說明和憑據 Flow Service API,同時將基本連接ID作為查詢參數提供。 發出PATCH請求時,必須提供源帳戶的唯一 etagIf-Match 標題。 有關完整的API示例,請閱讀上的指南 使用API更新源帳戶

刪除資料流

通過執行DELETE請求刪除資料流 Flow Service API,同時提供要作為查詢參數一部分刪除的資料流的ID。 有關完整的API示例,請閱讀上的指南 使用API刪除資料流

刪除帳戶

通過執行DELETE請求刪除帳戶 Flow Service API,同時提供要刪除的帳戶的基本連接ID。 有關完整的API示例,請閱讀上的指南 使用API刪除源帳戶

本頁內容