以下教程將逐步引導您完成建立源連接和資料流的步驟 Mailchimp Campaign 使用 Flow Service API.
連接之前 Mailchimp 若要使用OAuth 2重新整理程式碼來擷取Adobe Experience Platform,您必須先為 MailChimp. 請參閱 Mailchimp OAuth 2指南 以取得尋找存取權杖的詳細指示。
在您擷取 Mailchimp 身份驗證憑據,您現在可以啟動建立資料流的過程,以帶來 Mailchimp Campaign 資料至Platform。 建立資料流的第一步是建立基本連接。
基本連接在源和平台之間保留資訊,包括源的驗證憑據、連接的當前狀態和唯一基本連接ID。 基本連線ID可讓您從來源探索和導覽檔案,並識別您要擷取的特定項目,包括其資料類型和格式的相關資訊。
Mailchimp 支援基本驗證和OAuth 2重新整理程式碼。 如需如何使用任一驗證類型進行驗證的指引,請參閱下列範例。
建立 Mailchimp 基本連接使用基本身份驗證,向POST請求 /connections
端點 Flow Service API,同時提供您的 authorizationTestUrl
, username
,和 password
.
API格式
POST /connections
要求
下列請求會為 Mailchimp:
curl -X POST \
'https://platform.adobe.io/data/foundation/flowservice/connections' \
-H 'Authorization: Bearer {ACCESS_TOKEN}' \
-H 'Content-Type: application/json' \
-H 'x-api-key: {API_KEY}' \
-H 'x-gw-ims-org-id: {ORG_ID}' \
-H 'x-sandbox-name: {SANDBOX_NAME}'
-d '{
"name": "Mailchimp base connection with basic authentication",
"description": "Mailchimp Campaign base connection with basic authentication",
"connectionSpec": {
"id": "c8ce8c8c-37fb-4162-9fbf-c2f181e04a7a",
"version": "1.0"
},
"auth": {
"specName": "Basic Authentication",
"params": {
"authorizationTestUrl": "https://login.mailchimp.com/oauth2/metadata",
"username": "{USERNAME}",
"password": "{PASSWORD}"
}
}
}'
屬性 | 說明 |
---|---|
name |
基本連接的名稱。 請確定基本連線的名稱是描述性的,因為您可以使用此名稱來查詢基本連線的資訊。 |
description |
(選用)您可以包含的屬性,以提供有關基本連線的詳細資訊。 |
connectionSpec.id |
源的連接規範ID。 此ID可在您的來源註冊並透過 Flow Service API。 |
auth.specName |
用於將源連接到平台的驗證類型。 |
auth.params.authorizationTestUrl |
(可選)建立基本連線時,授權測試URL用於驗證憑證。 如果未提供,則在建立源連接步驟期間將自動檢查憑據。 |
auth.params.username |
與您的 Mailchimp 帳戶。 這是基本驗證的必要條件。 |
auth.params.password |
與您的 Mailchimp 帳戶。 這是基本驗證的必要條件。 |
回應
成功的響應返回新建的基本連接,包括其唯一連接標識符(id
)。 在下一步中,瀏覽源的檔案結構和內容時需要此ID。
{
"id": "9601747c-6874-4c02-bb00-5732a8c43086",
"etag": "\"3702dabc-0000-0200-0000-615b5b5a0000\""
}
建立 Mailchimp 使用OAuth 2重新整理程式碼進行基本連線,向 /connections
端點,同時提供您的憑證 authorizationTestUrl
,和 accessToken
.
API格式
POST /connections
要求
下列請求會為 Mailchimp:
curl -X POST \
'https://platform.adobe.io/data/foundation/flowservice/connections' \
-H 'Authorization: Bearer {ACCESS_TOKEN}' \
-H 'Content-Type: application/json' \
-H 'x-api-key: {API_KEY}' \
-H 'x-gw-ims-org-id: {ORG_ID}' \
-H 'x-sandbox-name: {SANDBOX_NAME}'
-d '{
"name": "Mailchimp base connection with OAuth 2 refresh code",
"description": "Mailchimp Campaign base connection with OAuth 2 refresh code",
"connectionSpec": {
"id": "c8ce8c8c-37fb-4162-9fbf-c2f181e04a7a",
"version": "1.0"
},
"auth": {
"specName": "oAuth2RefreshCode",
"params": {
"authorizationTestUrl": "https://login.mailchimp.com/oauth2/metadata",
"accessToken": "{ACCESS_TOKEN}"
}
}
}'
屬性 | 說明 |
---|---|
name |
基本連接的名稱。 請確定基本連線的名稱是描述性的,因為您可以使用此名稱來查詢基本連線的資訊。 |
description |
(選用)您可以包含的屬性,以提供有關基本連線的詳細資訊。 |
connectionSpec.id |
源的連接規範ID。 此ID可在使用 Flow Service API。 |
auth.specName |
用於向平台驗證源的驗證類型。 |
auth.params.authorizationTestUrl |
(可選)建立基本連線時,授權測試URL用於驗證憑證。 如果未提供,則在建立源連接步驟期間將自動檢查憑據。 |
auth.params.accessToken |
用於驗證源的相應訪問令牌。 這是OAuth型驗證的必要項目。 |
回應
成功的響應返回新建的基本連接,包括其唯一連接標識符(id
)。 在下一步中,瀏覽源的檔案結構和內容時需要此ID。
{
"id": "9601747c-6874-4c02-bb00-5732a8c43086",
"etag": "\"3702dabc-0000-0200-0000-615b5b5a0000\""
}
使用在上一步中生成的基本連接ID,可以通過執行GET請求來瀏覽檔案和目錄。 執行GET請求以探索源的檔案結構和內容時,必須包括下表中列出的查詢參數:
參數 | 說明 |
---|---|
{BASE_CONNECTION_ID} |
上一步驟中產生的基本連線ID。 |
{OBJECT_TYPE} |
要瀏覽的對象的類型。 對於REST來源,此值預設為 rest . |
{OBJECT} |
您要探索的物件。 |
{FILE_TYPE} |
只有在查看特定目錄時,才需要此參數。 其值表示要瀏覽的目錄的路徑。 |
{PREVIEW} |
一個布林值,定義連接的內容是否支援預覽。 |
{SOURCE_PARAMS} |
base64編碼的字串 campaign_id . |
要檢索接受的格式類型,請執行以下操作 {SOURCE_PARAMS}
,您必須將整個 campaignId
base64中的字串。 例如, {"campaignId": "c66a200cda"}
在base64等於 eyJjYW1wYWlnbklkIjoiYzY2YTIwMGNkYSJ9
.
API格式
GET /connections/{BASE_CONNECTION_ID}/explore?objectType=rest&objectType={OBJECT_TYPE}&fileType={FILE_TYPE}&preview={PREVIEW}&sourceParams={SOURCE_PARAMS}
要求
curl -X GET \
'https://platform.adobe.io/data/foundation/flowservice/connections/05c595e5-edc3-45c8-90bb-fcf556b57c4b/explore?objectType=rest&object=json&fileType=json&preview=true&sourceParams=eyJjYW1wYWlnbklkIjoiYzY2YTIwMGNkYSJ9' \
-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": [
{
"emails": [
{
"campaign_id": "c66a200cda",
"list_id": "10c097ca71",
"list_is_active": true,
"email_id": "cff65fb4c5f5828666ad846443720efd",
"email_address": "kendall2134@gmail.com",
"_links": [
{
"rel": "parent",
"href": "https://us6.api.mailchimp.com/3.0/reports/c66a200cda/email-activity",
"method": "GET",
"targetSchema": "https://us6.api.mailchimp.com/schema/3.0/Definitions/Reports/EmailActivity/CollectionResponse.json"
},
{
"rel": "self",
"href": "https://us6.api.mailchimp.com/3.0/reports/c66a200cda/email-activity/cff65fb4c5f5828666ad846443720efd",
"method": "GET",
"targetSchema": "https://us6.api.mailchimp.com/schema/3.0/Definitions/Reports/EmailActivity/Response.json"
},
{
"rel": "member",
"href": "https://us6.api.mailchimp.com/3.0/lists/10c097ca71/members/cff65fb4c5f5828666ad846443720efd",
"method": "GET",
"targetSchema": "https://us6.api.mailchimp.com/schema/3.0/Definitions/Lists/Members/Response.json"
}
]
},
{
"campaign_id": "c66a200cda",
"list_id": "10c097ca71",
"list_is_active": true,
"email_id": "a16b82774b211afaf60902d1afd8abc5",
"email_address": "logan9935890967@gmail.com",
"_links": [
{
"rel": "parent",
"href": "https://us6.api.mailchimp.com/3.0/reports/c66a200cda/email-activity",
"method": "GET",
"targetSchema": "https://us6.api.mailchimp.com/schema/3.0/Definitions/Reports/EmailActivity/CollectionResponse.json"
},
{
"rel": "self",
"href": "https://us6.api.mailchimp.com/3.0/reports/c66a200cda/email-activity/a16b82774b211afaf60902d1afd8abc5",
"method": "GET",
"targetSchema": "https://us6.api.mailchimp.com/schema/3.0/Definitions/Reports/EmailActivity/Response.json"
},
{
"rel": "member",
"href": "https://us6.api.mailchimp.com/3.0/lists/10c097ca71/members/a16b82774b211afaf60902d1afd8abc5",
"method": "GET",
"targetSchema": "https://us6.api.mailchimp.com/schema/3.0/Definitions/Lists/Members/Response.json"
}
]
},
]
}
]
}
您可以透過向 Flow Service API。 源連接由連接ID、源資料檔案的路徑和連接規範ID組成。
要建立源連接,您還必須為資料格式屬性定義枚舉值。
為檔案型來源使用下列列舉值:
資料格式 | 列舉值 |
---|---|
分隔 | delimited |
JSON | json |
鑲木 | parquet |
對於所有基於表的源,將值設定為 tabular
.
API格式
POST /sourceConnections
要求
以下請求將建立源連接 Mailchimp:
curl -X POST \
'https://platform.adobe.io/data/foundation/flowservice/sourceConnections' \
-H 'Authorization: Bearer {ACCESS_TOKEN}' \
-H 'Content-Type: application/json' \
-H 'x-api-key: {API_KEY}' \
-H 'x-gw-ims-org-id: {ORG_ID}' \
-H 'x-sandbox-name: {SANDBOX_NAME}'
-d '{
"name": "MailChimp source connection to ingest campaign ID",
"description": "MailChimp Campaign source connection to ingest campaign ID",
"baseConnectionId": "4cea039f-f1cc-4fa5-9136-db8dd4c7fbfa",
"connectionSpec": {
"id": "c8ce8c8c-37fb-4162-9fbf-c2f181e04a7a",
"version": "1.0"
},
"data": {
"format": "json"
},
"params": {
"campaignId": "c66a200cda"
}
}'
屬性 | 說明 |
---|---|
name |
源連接的名稱。 請確保源連接的名稱是描述性的,因為您可以使用此名稱查找有關源連接的資訊。 |
description |
可包含的選用值,用於提供來源連線的詳細資訊。 |
baseConnectionId |
基本連接ID為 Mailchimp. 此ID是在先前的步驟中產生。 |
connectionSpec.id |
與源對應的連接規範ID。 |
data.format |
格式 Mailchimp 您要擷取的資料。 |
params.campaignId |
此 Mailchimp 促銷活動ID可識別特定 Mailchimp campaign,接著可讓您傳送電子郵件給清單/對象。 |
回應
成功的回應會傳回唯一識別碼(id
)。 在後續步驟中需要此ID才能建立資料流。
{
"id": "d6557bf1-7347-415f-964c-9316bd4cbf56",
"etag": "\"e205c206-0000-0200-0000-615b5c070000\""
}
為了在Platform中使用來源資料,必須建立目標架構,以根據您的需求來建構來源資料。 然後,目標架構會用來建立包含來源資料的Platform資料集。
您可以透過執行POST要求來建立目標XDM結構 結構註冊表API.
如需建立Target XDM結構的詳細步驟,請參閱 使用API建立結構.
目標資料集的建立方式,是透過對 目錄服務API,提供裝載中目標架構的ID。
如需如何建立目標資料集的詳細步驟,請參閱 使用API建立資料集.
目標連線代表所擷取資料所登陸之目的地的連線。 要建立目標連接,必須提供與 Data Lake. 此ID為: c604ff05-7f1a-43c0-8e18-33bf874cb11c
.
您現在擁有的唯一識別碼是目標架構、目標資料集,以及與 Data Lake. 使用這些識別碼,您可以使用 Flow Service API,指定包含傳入來源資料的資料集。
API格式
POST /targetConnections
要求
下列請求會為 Mailchimp:
curl -X POST \
'https://platform.adobe.io/data/foundation/flowservice/targetConnections' \
-H 'Authorization: Bearer {ACCESS_TOKEN}' \
-H 'Content-Type: application/json' \
-H 'x-api-key: {API_KEY}' \
-H 'x-gw-ims-org-id: {ORG_ID}' \
-H 'x-sandbox-name: {SANDBOX_NAME}'
-d '{
"name": "MailChimp target connection",
"description": "MailChimp Campaign target connection",
"connectionSpec": {
"id": "c604ff05-7f1a-43c0-8e18-33bf874cb11c",
"version": "1.0"
},
"data": {
"format": "parquet_xdm",
"schema": {
"id": "https://ns.adobe.com/{TENANT_ID}/schemas/570630b91eb9d5cf5db0436756abb110d02912917a67da2d",
"version": "application/vnd.adobe.xed-full+json;version=1"
}
},
"params": {
"dataSetId": "6155e3a9bd13651949515f14"
}
}'
屬性 | 說明 |
---|---|
name |
目標連接的名稱。 請確定目標連線的名稱是描述性的,因為您可以使用此名稱來查詢目標連線的資訊。 |
description |
可包含的選用值,用於提供目標連線的詳細資訊。 |
connectionSpec.id |
與 Data Lake. 此固定ID為: c604ff05-7f1a-43c0-8e18-33bf874cb11c . |
data.format |
格式 Mailchimp 要帶入Platform的資料。 |
params.dataSetId |
上一步驟中擷取的目標資料集ID。 |
回應
成功的回應會傳回新目標連線的唯一識別碼(id
)。 後續步驟需要此ID。
{
"id": "9463fe9c-027d-4347-a423-894fcd105647",
"etag": "\"b902e822-0000-0200-0000-615b5c370000\""
}
目前不支援的資料準備函式 Mailchimp Campaign.
最後一步 Mailchimp 資料到Platform是建立資料流。 您現在已準備下列必要值:
資料流負責從源中調度和收集資料。 您可以在裝載中提供先前提及的值時,執行POST要求來建立資料流。
若要排程擷取,您必須先將開始時間值設為紀元時間(以秒為單位)。 然後,您必須將頻率值設定為以下五個選項之一: once
, minute
, hour
, day
,或 week
. 間隔值會指定兩個連續擷取之間的期間,並建立一次擷取(once
)不需要設定間隔。 對於所有其他頻率,間隔值必須設定為等於或大於 15
.
API格式
POST /flows
要求
curl -X POST \
'https://platform.adobe.io/data/foundation/flowservice/flows' \
-H 'Authorization: Bearer {ACCESS_TOKEN}' \
-H 'Content-Type: application/json' \
-H 'x-api-key: {API_KEY}' \
-H 'x-gw-ims-org-id: {ORG_ID}' \
-H 'x-sandbox-name: {SANDBOX_NAME}'
-d '{
"name": "MailChimp Campaign dataflow",
"description": "MailChimp Campaign dataflow",
"flowSpec": {
"id": "6499120c-0b15-42dc-936e-847ea3c24d72",
"version": "1.0"
},
"sourceConnectionIds": [
"d6557bf1-7347-415f-964c-9316bd4cbf56"
],
"targetConnectionIds": [
"9463fe9c-027d-4347-a423-894fcd105647"
],
"scheduleParams": {
"startTime": "1632809759",
"frequency": "minute",
"interval": 15
}
}'
屬性 | 說明 |
---|---|
name |
資料流的名稱。 請確保資料流的名稱具有描述性,因為您可以使用此名稱查找資料流的資訊。 |
description |
(可選)可以包括的屬性,用於提供有關資料流的更多資訊。 |
flowSpec.id |
建立資料流所需的流規範ID。 此固定ID為: 6499120c-0b15-42dc-936e-847ea3c24d72 . |
flowSpec.version |
流規範ID的相應版本。 此值預設為 1.0 . |
sourceConnectionIds |
此 源連接ID 在先前的步驟中產生。 |
targetConnectionIds |
此 目標連線ID 在先前的步驟中產生。 |
scheduleParams.startTime |
資料首次擷取開始時的指定開始時間。 |
scheduleParams.frequency |
資料流收集資料的頻率。 可接受的值包括: once , minute , hour , day ,或 week . |
scheduleParams.interval |
該間隔指定兩個連續流運行之間的週期。 間隔的值應為非零整數。 頻率設為時不需要間隔 once 且應大於或等於 15 的其他頻率值。 |
回應
成功的回應會傳回ID(id
)。 您可以使用此ID監視、更新或刪除資料流。
{
"id": "be2d5249-eeaf-4a74-bdbd-b7bf62f7b2da",
"etag": "\"7e010621-0000-0200-0000-615b5c9b0000\""
}
以下部分提供了可以監視、更新和刪除資料流的步驟資訊。
建立資料流後,您可以監視正在通過資料流進行內嵌的資料,以查看有關流運行、完成狀態和錯誤的資訊。 如需完整的API範例,請參閱 使用API監控來源資料流.
通過向發出PATCH請求,更新資料流的詳細資訊(如其名稱和說明),以及其運行計畫和關聯的映射集 /flows
端點 Flow Service API,同時提供資料流的ID。 發出PATCH請求時,必須提供資料流的唯一 etag
在 If-Match
頁首。 如需完整的API範例,請參閱 使用API更新源資料流.
通過向執行PATCH請求,更新源帳戶的名稱、說明和憑據 Flow Service API,同時將基本連線ID設為查詢參數。 提出PATCH請求時,您必須提供來源帳戶的唯一 etag
在 If-Match
頁首。 如需完整的API範例,請參閱 使用API更新您的來源帳戶.
通過執行DELETE請求以刪除資料流 Flow Service API,同時提供您要在查詢參數中刪除之資料流的ID。 如需完整的API範例,請參閱 使用API刪除資料流.
對執行DELETE請求以刪除帳戶 Flow Service API,同時提供您要刪除之帳戶的基本連線ID。 如需完整的API範例,請參閱 使用API刪除您的來源帳戶.