连接到基于文件的电子邮件营销目标,并使用流服务API激活数据
本教程将演示如何使用流服务API创建基于文件的 电子邮件营销目标,创建新创建目标的数据流,并通过CSV文件将数据导出到新创建的目标。
本教程使用 Adobe Campaign 目标,但步骤与基于文件的电子邮件营销目标相同。
如果您希望使用Platform用户界面连接到目标并激活数据,请参阅 连接目标 和 将受众数据激活到批量配置文件导出目标 教程。
快速入门 get-started
本指南要求您对 Adobe Experience Platform 的以下组件有一定了解:
- Experience Data Model (XDM) System:用于实现此目标的标准化框架 Experience Platform 组织客户体验数据。
- Segmentation Service: Adobe Experience Platform Segmentation Service 允许您在中构建受众 Adobe Experience Platform 来自您的 Real-Time Customer Profile 数据。
- Sandboxes: Experience Platform 提供对单个文件夹进行分区的虚拟沙盒 Platform 将实例安装到单独的虚拟环境中,以帮助开发和改进数字体验应用程序。
以下部分提供了您需要了解的其他信息,以便将数据激活到Platform中的批处理目标。
收集所需的凭据 gather-required-credentials
要完成本教程中的步骤,您应该准备好以下凭据,具体取决于要连接和激活受众的目标类型。
- 对象 Amazon S3 连接:
accessId
,secretKey
- 对象 Amazon S3 连接至 Adobe Campaign:
accessId
,secretKey
- 对于SFTP连接:
domain
,port
,username
,password
或sshKey
(具体取决于与FTP位置的连接方法) - 对象 Azure Blob 连接:
connectionString
accessId
, secretKey
对象 Amazon S3 连接和 accessId
, secretKey
对象 Amazon S3 连接至 Adobe Campaign 相同。正在读取示例 API 调用 reading-sample-api-calls
本教程提供了示例API调用来演示如何格式化请求。 这些包括路径、必需的标头和格式正确的请求负载。还提供了在 API 响应中返回的示例 JSON。有关文档中用于示例API调用的惯例的信息,请参阅 如何读取示例API调用 在 Experience Platform 疑难解答指南。
收集必需标题和可选标题的值 gather-values-headers
为了调用 Platform API,您必须先完成 身份验证教程. 完成身份验证教程会提供所有 Experience Platform API 调用中每个所需标头的值,如下所示:
- 授权:持有者
{ACCESS_TOKEN}
- x-api-key:
{API_KEY}
- x-gw-ims-org-id:
{ORG_ID}
中的资源 Experience Platform 可以隔离到特定的虚拟沙箱。 在请求中 Platform API中,您可以指定将在其中执行操作的沙盒的名称和ID。 这些是可选参数。
- x-sandbox-name:
{SANDBOX_NAME}
所有包含有效负载(POST、PUT、PATCH)的请求都需要额外的媒体类型标头:
- 内容类型:
application/json
API参考文档 api-reference-documentation
您可以在本教程中找到所有API操作的随附参考文档。 请参阅 有关Adobe I/O的流服务API文档. 我们建议您并行使用此教程和API参考文档。
获取可用目标列表 get-the-list-of-available-destinations
第一步,您应该决定要将数据激活到的目标。 首先,请执行调用以请求可连接并激活受众的可用目标列表。 向发出以下GET请求 connectionSpecs
端点返回可用目标列表:
API格式
GET /connectionSpecs
请求
curl --location --request GET 'https://platform.adobe.io/data/foundation/flowservice/connectionSpecs' \
--header 'accept: application/json' \
--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}'
响应
成功的响应包含可用目标及其唯一标识符的列表(id
)。 存储您计划使用的目标的值,因为后续步骤需要该值。 例如,如果要连接并将受众交付到 Adobe Campaign,在响应中查找以下代码片段:
{
"id": "0b23e41a-cb4a-4321-a78f-3b654f5d7d97",
"name": "Adobe Campaign",
...
...
}
下表包含常用批处理目标的连接规范ID,以供您参考:
0b23e41a-cb4a-4321-a78f-3b654f5d7d97
c1e44b6b-e7c8-404b-9031-58f0ef760604
a5e28ddf-e265-426e-83a1-9d03a3a6822b
f599a5b3-60a7-4951-950a-cc4115c7ea27
连接到您的 Experience Platform 数据 connect-to-your-experience-platform-data
接下来,您必须连接到 Experience Platform 数据,以便您导出配置文件数据并在首选目标中激活它。 这包含下面描述的两个子步骤。
- 首先,您必须执行调用以授权对中的数据的访问 Experience Platform,通过设置基本连接。
- 然后,使用基本连接ID执行另一个调用,您将在其中创建 源连接,以建立与 Experience Platform 数据。
授权访问中的数据 Experience Platform
API格式
POST /connections
请求
curl --location --request POST 'https://platform.adobe.io/data/foundation/flowservice/connections' \
--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": "Base connection to Experience Platform",
"description": "This call establishes the connection to Experience Platform data",
"connectionSpec": {
"id": "{CONNECTION_SPEC_ID}",
"version": "1.0"
}
}'
name
description
connectionSpec.id
8a9c3494-9708-43d7-ae3f-cda01e5030e1
.响应
成功的响应包含基本连接的唯一标识符(id
)。 将此值存储为创建源连接时所需的值。
{
"id": "1ed86558-59b5-42f7-9865-5859b552f7f4"
}
连接到您的 Experience Platform 数据 connect-to-platform-data
API格式
POST /sourceConnections
请求
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": "Connecting to Profile Store",
"description": "Optional",
"connectionSpec": {
"id": "{CONNECTION_SPEC_ID}",
"version": "1.0"
},
"baseConnectionId": "{BASE_CONNECTION_ID}",
"data": {
"format": "CSV",
"schema": null
},
"params" : {}
}'
name
description
connectionSpec.id
8a9c3494-9708-43d7-ae3f-cda01e5030e1
.baseConnectionId
data.format
CSV
是当前唯一支持的文件导出格式。响应
成功的响应将返回唯一标识符(id
)作为新创建的源连接 Profile Store. 这表示您已成功连接到 Experience Platform 数据。 将此值存储为后续步骤中所需的值。
{
"id": "ed48ae9b-c774-4b6e-88ae-9bc7748b6e97"
}
连接到批处理目标 connect-to-batch-destination
在此步骤中,您需要设置与所需的批处理云存储或电子邮件营销目标的连接。 这包含下面描述的两个子步骤。
- 首先,您必须执行调用以通过设置基本连接来授权对目标平台的访问。
- 然后,使用基本连接ID进行另一个调用,您将在其中创建 目标连接,指定将传送导出数据文件的存储帐户位置以及将导出数据的格式。
授权对批次目标的访问 authorize-access-to-batch-destination
API格式
POST /connections
请求
下面的请求建立了到 Adobe Campaign 目标。 根据要将文件导出到的存储位置(Amazon S3、 SFTP、 Azure Blob),保留适当的 auth
规范并删除其他项。
curl --location --request POST 'https://platform.adobe.io/data/foundation/flowservice/connections' \
--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": "S3 Connection for Adobe Campaign",
"description": "summer advertising campaign",
"connectionSpec": {
"id": "0b23e41a-cb4a-4321-a78f-3b654f5d7d97",
"version": "1.0"
},
"auth": {
"specName": "S3",
"params": {
"accessId": "{ACCESS_ID}",
"secretKey": "{SECRET_KEY}"
}
}
"auth": {
"specName": "SFTP with Password",
"params": {
"domain": "{DOMAIN}",
"host": "{HOST}",
"username": "{USERNAME}",
"password": "{PASSWORD}"
}
}
"auth": {
"specName": "SFTP with SSH Key",
"params": {
"domain": "{DOMAIN}",
"host": "{HOST}",
"username": "{USERNAME}",
"sshKey": "{SSH_KEY}"
}
}
"auth": {
"specName": "Azure Blob",
"params": {
"connectionString": "{AZURE_BLOB_CONNECTION_STRING}"
}
}
}'
请参阅下面的示例请求,以连接到其他受支持的批量云存储和电子邮件营销目标。
下面的请求建立了到 Amazon S3 目标。
code language-shell |
---|
|
下面的请求建立了到 Azure Blob 目标。
code language-shell |
---|
|
下面的请求建立了到 Oracle Eloqua 目标。 根据要将文件导出到的存储位置,保留相应的 auth
规范并删除其他项。
code language-shell |
---|
|
下面的请求建立了到 Oracle Responsys 目标。 根据要将文件导出到的存储位置,保留相应的 auth
规范并删除其他项。
code language-shell |
---|
|
下面的请求建立了到 Salesforce Marketing Cloud 目标。 根据要将文件导出到的存储位置,保留相应的 auth
规范并删除其他项。
code language-shell |
---|
|
以下请求将建立与SFTP目标的基本连接。
code language-shell |
---|
|
name
description
connectionSpec.id
auth.specname
authSpec.name
作为回应。例如,对于Adobe Campaign目标,您可以使用任何
S3
, SFTP with Password
,或 SFTP with SSH Key
.params
要查找目标的所需参数,请执行 对连接规范端点的GET调用,提供所需目标的连接规范。 查找参数
authSpec.spec.required
作为回应。响应
成功的响应包含基本连接的唯一标识符(id
)。 将此值存储为创建目标连接时在下一步中所需的值。
{
"id": "1ed86558-59b5-42f7-9865-5859b552f7f4"
}
指定存储位置和数据格式 specify-storage-location-data-format
Adobe Experience Platform 通过以下形式导出用于批量电子邮件营销和云存储目标的数据 CSV 文件。 在此步骤中,您可以确定要导出文件的存储位置的路径。
filename.csv
, filename_2.csv
, filename_3.csv
.API格式
POST /targetConnections
请求
下面的请求建立了目标连接 Adobe Campaign 目标,以确定导出的文件在您的存储位置中的登陆位置。 根据要将文件导出到的存储位置,保留相应的 params
规范并删除其他项。
curl --location --request POST 'https://platform.adobe.io/data/foundation/flowservice/targetConnections' \
--header 'Authorization: Bearer {ACCESS_TOKEN}' \
--header 'x-api-key: {API_KEY}' \
--header 'x-gw-ims-org-id: {ORG_ID}' \
--header 'Content-Type: application/json' \
--data-raw '{
"name": "TargetConnection for Adobe Campaign",
"description": "Connection to Adobe Campaign",
"baseConnectionId": "{BASE_CONNECTION_ID}",
"connectionSpec": {
"id": "0b23e41a-cb4a-4321-a78f-3b654f5d7d97",
"version": "1.0"
},
"data": {
"format": "json",
"schema": {
"id": "1.0",
"version": "1.0"
}
},
"params": {
"mode": "S3",
"bucketName": "{BUCKET_NAME}",
"path": "{FILEPATH}",
"format": "CSV"
}
"params": {
"mode": "AZURE_BLOB",
"container": "{CONTAINER}",
"path": "{FILEPATH}",
"format": "CSV"
}
"params": {
"mode": "FTP",
"remotePath": "{REMOTE_PATH}",
"format": "CSV"
}
}'
请参阅下面的示例请求,为其他受支持的批处理云存储和电子邮件营销目标设置存储位置。
下面的请求建立了目标连接 Amazon S3 目标,以确定导出的文件在您的存储位置中的登陆位置。
code language-shell |
---|
|
下面的请求建立了目标连接 Azure Blob 目标,以确定导出的文件在您的存储位置中的登陆位置。
code language-shell |
---|
|
下面的请求建立了目标连接 Oracle Eloqua 目标,以确定导出的文件在您的存储位置中的登陆位置。 根据要将文件导出到的存储位置,保留相应的 params
规范并删除其他项。
code language-shell |
---|
|
下面的请求建立了目标连接 Oracle Responsys 目标,以确定导出的文件在您的存储位置中的登陆位置。 根据要将文件导出到的存储位置,保留相应的 params
规范并删除其他项。
code language-shell |
---|
|
下面的请求建立了目标连接 Salesforce Marketing Cloud 目标,以确定导出的文件在您的存储位置中的登陆位置。 根据要将文件导出到的存储位置,保留相应的 params
规范并删除其他项。
code language-shell |
---|
|
以下请求会建立与SFTP目标的目标连接,以确定导出的文件将登陆到您的存储位置的位置。
code language-shell |
---|
|
name
description
baseConnectionId
connectionSpec.id
params
要查找目标的所需参数,请执行 对连接规范端点的GET调用,提供所需目标的连接规范。 查找参数
targetSpec.spec.required
作为回应。params.mode
targetSpec.spec.properties.mode.enum
在响应中,并选择所需的模式。params.bucketName
params.path
params.format
CSV
是当前唯一支持的文件导出类型。响应
成功的响应将返回唯一标识符(id
),以获取到批处理目标的新创建目标连接。 在后续步骤中根据需要存储此值。
{
"id": "12ab90c7-519c-4291-bd20-d64186b62da8"
}
创建数据流 create-dataflow
使用您在上一步中获得的流量规范、源连接和目标连接ID,您现在可以在以下位置创建数据流: Experience Platform 数据以及导出数据文件的目标。 将此步骤视为构建管道,数据稍后将通过该管道在管道之间流动 Experience Platform 以及您想要的目的地。
要创建数据流,请执行如下所示的POST请求,同时在有效负载中提供下面提到的值。
API格式
POST /flows
请求
curl -X POST \
'https://platform.adobe.io/data/foundation/flowservice/flows' \
-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": "activate audiences to Adobe Campaign",
"description": "This operation creates a dataflow which we will later use to activate audiences to Adobe Campaign",
"flowSpec": {
"id": "{FLOW_SPEC_ID}",
"version": "1.0"
},
"sourceConnectionIds": [
"{SOURCE_CONNECTION_ID}"
],
"targetConnectionIds": [
"{TARGET_CONNECTION_ID}"
],
"transformations": [
{
"name": "GeneralTransform",
"params": {
"segmentSelectors": {
"selectors": []
},
"profileSelectors": {
"selectors": []
}
}
}
]
}
name
description
flowSpec.Id
flowspecs
端点,如 流量规范API参考文档. 在响应中,查找 upsTo
并复制要连接的批处理目标的相应ID。 例如,对于Adobe Campaign,查找 upsToCampaign
并复制 id
参数。sourceConnectionIds
targetConnectionIds
transformations
下表包含常用批处理目标的流规范ID以供您参考:
71471eba-b620-49e4-90fd-23f1fa0174d8
51d675ce-e270-408d-91fc-22717bdf2148
493b2bd6-26e4-4167-ab3b-5e910bba44f0
响应
成功的响应会返回ID (id
)和 etag
. 记下这两个值,因为在下一步中需要它们,以激活受众并导出数据文件。
{
"id": "8256cfb4-17e6-432c-a469-6aedafb16cd5",
"etag": "8256cfb4-17e6-432c-a469-6aedafb16cd5"
}
将数据激活到新目标 activate-data
创建了所有连接和数据流后,您现在可以将配置文件数据激活到目标平台。 在此步骤中,选择要导出到目标的受众和配置文件属性。
您还可以确定导出文件的文件命名格式以及应使用的属性 重复数据删除键 或 必需属性. 在此步骤中,您还可以确定将数据发送到目标的计划。
要将受众激活到新目标,您必须执行JSONPATCH操作,类似于以下示例。 您可以在一次调用中激活多个受众和配置文件属性。 要了解有关JSONPATCH的更多信息,请参阅 RFC规范.
API格式
PATCH /flows
请求
curl --location --request PATCH 'https://platform.adobe.io/data/foundation/flowservice/flows/{DATAFLOW_ID}' \
--header 'Authorization: Bearer {ACCESS_TOKEN}' \
--header 'x-api-key: {API_KEY}' \
--header 'x-gw-ims-org-id: {ORG_ID}' \
--header 'Content-Type: application/json' \
--header 'x-sandbox-name: {SANDBOX_NAME}' \
--header 'If-Match: "{ETAG}"' \
--data-raw '[
{
"op": "add",
"path": "/transformations/0/params/segmentSelectors/selectors/-",
"value": {
"type": "PLATFORM_SEGMENT",
"value": {
"name": "Name of the audience that you are activating",
"description": "Description of the audience that you are activating",
"id": "{SEGMENT_ID}",
"filenameTemplate": "%DESTINATION_NAME%_%SEGMENT_ID%_%DATETIME(YYYYMMdd_HHmmss)%",
"exportMode": "DAILY_FULL_EXPORT",
"schedule": {
"frequency": "ONCE",
"startDate": "2021-12-20",
"startTime": "17:00"
}
}
}
},
{
"op": "add",
"path": "/transformations/0/params/segmentSelectors/selectors/-",
"value": {
"type": "PLATFORM_SEGMENT",
"value": {
"name": "Name of the audience that you are activating",
"description": "Description of the audience that you are activating",
"id": "{SEGMENT_ID}",
"filenameTemplate": "%DESTINATION_NAME%_%SEGMENT_ID%_%DATETIME(YYYYMMdd_HHmmss)%",
"exportMode": "DAILY_FULL_EXPORT",
"schedule": {
"frequency": "ONCE",
"triggerType": "SCHEDULED",
"startDate": "2021-12-20",
"startTime": "17:00"
},
}
}
},
{
"op": "add",
"path": "/transformations/0/params/profileSelectors/selectors/-",
"value": {
"type": "JSON_PATH",
"value": {
"path": "{PROFILE_ATTRIBUTE}"
}
}
}
]
{DATAFLOW_ID}
{ETAG}
获取 {ETAG}
根据上一步的响应, 创建数据流. 上一步中的响应格式对引号进行了转义。 您必须在请求的标头中使用未转义值。 请参阅以下示例:
- 响应示例:
"etag":""7400453a-0000-1a00-0000-62b1c7a90000""
- 要在请求中使用的值:
"etag": "7400453a-0000-1a00-0000-62b1c7a90000"
每次成功更新数据流时,etag值都会更新。
{SEGMENT_ID}
{PROFILE_ATTRIBUTE}
"person.lastName"
op
add
, replace
、和 remove
. 要将受众添加到数据流,请使用 add
操作。path
value
id
name
filenameTemplate
此字段确定导出到目标的文件的文件名格式。
可以使用以下选项:
%DESTINATION_NAME%
:必填项。 导出的文件包含目标名称。%SEGMENT_ID%
:必填项。 导出的文件包含导出受众的ID。%SEGMENT_NAME%
:可选。 导出的文件包含导出的受众的名称。DATETIME(YYYYMMdd_HHmmss)
或%TIMESTAMP%
:可选。 为文件选择这两个选项之一,以包括通过Experience Platform生成文件的时间。custom-text
:可选。 将此占位符替换为要在文件名末尾追加的任何自定义文本。
有关配置文件名的详细信息,请参阅 配置文件名 部分(在批量目标激活教程中)。
exportMode
startDate
frequency
必填。
- 对于
"DAILY_FULL_EXPORT"
导出模式,您可以选择ONCE
或DAILY
. - 对于
"FIRST_FULL_THEN_INCREMENTAL"
导出模式,您可以选择"DAILY"
,"EVERY_3_HOURS"
,"EVERY_6_HOURS"
,"EVERY_8_HOURS"
,"EVERY_12_HOURS"
.
triggerType
对象 批处理目标 仅限。 只有在选择 "DAILY_FULL_EXPORT"
中的模式 frequency
选择器。
必填。
- 选择
"AFTER_SEGMENT_EVAL"
使激活作业在每日Platform批量分段作业完成后立即运行。 这可确保在激活作业运行时,将最新的配置文件导出到您的目标。 - 选择
"SCHEDULED"
使激活作业在固定时间运行。 这可确保每天在同一时间导出Experience Platform配置文件数据,但您导出的配置文件可能不是最新的,具体取决于批量分段作业是否在激活作业开始之前完成。 选择此选项时,您还必须添加startTime
指示每日导出应在UTC时段的哪个时间发生。
endDate
选择时不适用
"exportMode":"DAILY_FULL_EXPORT"
和 "frequency":"ONCE"
.设置受众成员停止导出到目标的日期。
startTime
必填。 选择应生成包含受众成员的文件并将其导出到目标的时间。
响应
查找“202已接受”的响应。 未返回响应正文。 要验证请求是否正确,请参阅下一步, 验证数据流.
验证数据流 validate-dataflow
作为本教程的最后一步,您应该验证受众和配置文件属性是否确实已正确映射到数据流。
要验证这一点,请执行以下GET请求:
API格式
GET /flows
请求
curl --location --request PATCH 'https://platform.adobe.io/data/foundation/flowservice/flows/{DATAFLOW_ID}' \
--header 'Authorization: Bearer {ACCESS_TOKEN}' \
--header 'x-api-key: {API_KEY}' \
--header 'x-gw-ims-org-id: {ORG_ID}' \
--header 'Content-Type: application/json' \
--header 'x-sandbox-name: prod' \
--header 'If-Match: "{ETAG}"'
{DATAFLOW_ID}
:使用上一步的数据流。{ETAG}
:使用上一步骤中的电子标记。
响应
返回的响应应包含在 transformations
参数在上一步中提交的受众和配置文件属性。 示例 transformations
响应中的参数可能如下所示:
"transformations":[
{
"name":"GeneralTransform",
"params":{
"profileSelectors":{
"selectors":[
{
"type":"JSON_PATH",
"value":{
"path":"homeAddress.countryCode",
"operator":"EXISTS",
"mapping":{
"sourceType":"text/x.schema-path",
"source":"homeAddress.countryCode",
"destination":"homeAddress.countryCode",
"identity":false,
"primaryIdentity":false,
"functionVersion":0,
"copyModeMapping":false,
"sourceAttribute":"homeAddress.countryCode",
"destinationXdmPath":"homeAddress.countryCode"
}
}
},
{
"type":"JSON_PATH",
"value":{
"path":"person.name.firstName",
"operator":"EXISTS",
"mapping":{
"sourceType":"text/x.schema-path",
"source":"person.name.firstName",
"destination":"person.name.firstName",
"identity":false,
"primaryIdentity":false,
"functionVersion":0,
"copyModeMapping":false,
"sourceAttribute":"person.name.firstName",
"destinationXdmPath":"person.name.firstName"
}
}
},
{
"type":"JSON_PATH",
"value":{
"path":"person.name.lastName",
"operator":"EXISTS",
"mapping":{
"sourceType":"text/x.schema-path",
"source":"person.name.lastName",
"destination":"person.name.lastName",
"identity":false,
"primaryIdentity":false,
"functionVersion":0,
"copyModeMapping":false,
"sourceAttribute":"person.name.lastName",
"destinationXdmPath":"person.name.lastName"
}
}
},
{
"type":"JSON_PATH",
"value":{
"path":"personalEmail.address",
"operator":"EXISTS",
"mapping":{
"sourceType":"text/x.schema-path",
"source":"personalEmail.address",
"destination":"personalEmail.address",
"identity":false,
"primaryIdentity":false,
"functionVersion":0,
"copyModeMapping":false,
"sourceAttribute":"personalEmail.address",
"destinationXdmPath":"personalEmail.address"
}
}
},
{
"type":"JSON_PATH",
"value":{
"path":"segmentMembership.status",
"operator":"EXISTS",
"mapping":{
"sourceType":"text/x.schema-path",
"source":"segmentMembership.status",
"destination":"segmentMembership.status",
"identity":false,
"primaryIdentity":false,
"functionVersion":0,
"copyModeMapping":false,
"sourceAttribute":"segmentMembership.status",
"destinationXdmPath":"segmentMembership.status"
}
}
}
],
"mandatoryFields":[
"person.name.firstName",
"person.name.lastName"
],
"primaryFields":[
{
"fieldType":"ATTRIBUTE",
"attributePath":"personalEmail.address"
}
]
},
"segmentSelectors":{
"selectors":[
{
"type":"PLATFORM_SEGMENT",
"value":{
"id":"9f7d37fd-7039-4454-94ef-2b0cd6c3206a",
"name":"Interested in Mountain Biking",
"filenameTemplate":"%DESTINATION_NAME%_%SEGMENT_ID%_%DATETIME(YYYYMMdd_HHmmss)%",
"exportMode":"DAILY_FULL_EXPORT",
"schedule":{
"frequency":"ONCE",
"startDate":"2021-12-20",
"startTime":"17:00"
},
"createTime":"1640016962",
"updateTime":"1642534355"
}
},
{
"type":"PLATFORM_SEGMENT",
"value":{
"id":"25768be6-ebd5-45cc-8913-12fb3f348613",
"name":"Loyalty Segment",
"filenameTemplate":"%DESTINATION_NAME%_%SEGMENT_ID%_%DATETIME(YYYYMMdd_HHmmss)%",
"exportMode":"FIRST_FULL_THEN_INCREMENTAL",
"schedule":{
"frequency":"EVERY_6_HOURS",
"startDate":"2021-12-22",
"endDate":"2021-12-31",
"startTime":"17:00"
},
"createTime":"1640016962",
"updateTime":"1642534355"
}
}
]
}
}
}
]
API错误处理 api-error-handling
本教程中的API端点遵循常规Experience PlatformAPI错误消息原则。 请参阅 API状态代码 和 请求标头错误 有关解释错误响应的更多信息,请参阅平台故障排除指南。
后续步骤 next-steps
通过学习本教程,您已成功地将Platform连接到您首选的基于文件的电子邮件营销目标之一,并设置了数据流到相应的目标以导出数据文件。 现在,传出数据可用于电子邮件促销活动、定向广告和许多其他用例的目标。 有关更多详细信息,请参阅以下页面,例如如何使用流服务API编辑现有数据流: