此页介绍如何使用Destination SDK配置 Data Landing Zone 具有自定义的目标 文件格式选项 和自定义 文件名配置.
此页显示以下项可用的所有配置选项: Data Landing Zone 目标。 您可以根据需要编辑以下步骤中显示的配置或删除配置的某些部分。
有关下面使用的参数的详细说明,请参阅 目标SDK中的配置选项.
在继续执行以下步骤之前,请阅读 Destination SDK快速入门 页面,以了解有关获取使用Adobe I/OAPI所需的身份验证Destination SDK凭据和其他先决条件的信息。
首先使用 /destination-server
终结点至 创建服务器和文件配置.
API格式
POST platform.adobe.io/data/core/activation/authoring/destination-servers
请求
以下请求创建新的目标服务器配置,该配置由有效负载中提供的参数配置。
以下有效负载包含通用 Data Landing Zone 配置,使用自定义 CSV文件格式 用户可以在Experience PlatformUI中定义的配置参数。
curl -X POST https://platform.adobe.io/data/core/activation/authoring/destination-server \
-H 'Authorization: Bearer {ACCESS_TOKEN}' \
-H 'Content-Type: application/json' \
-H 'x-gw-ims-org-id: {ORG_ID}' \
-H 'x-api-key: {API_KEY}' \
-H 'x-sandbox-name: {SANDBOX_NAME}' \
-d '
{
"name":"DLZ Destination Server",
"destinationServerType":"FILE_BASED_DLZ",
"fileBasedDlzDestination":{
"path":{
"templatingStrategy":"PEBBLE_V1",
"value":"{{customerData.path}}"
},
"fileConfigurations":{
"compression":{
"templatingStrategy":"PEBBLE_V1",
"value":"{{customerData.compression}}"
},
"fileType":{
"templatingStrategy":"PEBBLE_V1",
"value":"{{customerData.fileType}}"
},
"csvOptions":{
"sep":{
"templatingStrategy":"PEBBLE_V1",
"value":"{{customerData.sep}}"
},
"encoding":{
"templatingStrategy":"PEBBLE_V1",
"value":"{{customerData.encoding}}"
},
"quote":{
"templatingStrategy":"PEBBLE_V1",
"value":"{{customerData.quote}}"
},
"quoteAll":{
"templatingStrategy":"PEBBLE_V1",
"value":"{{customerData.quoteAll}}"
},
"escape":{
"templatingStrategy":"PEBBLE_V1",
"value":"{{customerData.escape}}"
},
"escapeQuotes":{
"templatingStrategy":"PEBBLE_V1",
"value":"{{customerData.escapeQuotes}}"
},
"header":{
"templatingStrategy":"PEBBLE_V1",
"value":"{{customerData.header}}"
},
"ignoreLeadingWhiteSpace":{
"templatingStrategy":"PEBBLE_V1",
"value":"{{customerData.ignoreLeadingWhiteSpace}}"
},
"nullValue":{
"templatingStrategy":"PEBBLE_V1",
"value":"{{customerData.nullValue}}"
},
"dateFormat":{
"templatingStrategy":"PEBBLE_V1",
"value":"{{customerData.dateFormat}}"
},
"charToEscapeQuoteEscaping":{
"templatingStrategy":"PEBBLE_V1",
"value":"{{customerData.charToEscapeQuoteEscaping}}"
},
"emptyValue":{
"templatingStrategy":"PEBBLE_V1",
"value":"{{customerData.dateFormat}}"
}
}
}
}
}'
成功响应将返回新的目标服务器配置,包括唯一标识符(instanceId
)。 将此值存储为下一步中所需的值。
在上一步中创建目标服务器和文件格式配置后,您现在可以使用 /destinations
用于创建目标配置的API端点。
在中连接服务器配置 步骤1 对于此目标配置,将 destinationServerId
值以及在中创建目标服务器时获得的值,检查以下API请求中的值 步骤1.
API格式
POST platform.adobe.io/data/core/activation/authoring/destinations
请求
curl -X POST https://platform.adobe.io/data/core/activation/authoring/destinations \
-H 'Authorization: Bearer {ACCESS_TOKEN}' \
-H 'Content-Type: application/json' \
-H 'x-gw-ims-org-id: {ORG_ID}' \
-H 'x-api-key: {API_KEY}' \
-H 'x-sandbox-name: {SANDBOX_NAME}' \
-d '
{
"name":"DLZ Destination",
"description":"SSD DLZ Destination",
"status":"TEST",
"customerAuthenticationConfigurations":[
],
"customerEncryptionConfigurations":[
],
"customerDataFields":[
{
"name":"path",
"title":"Folder path",
"description":"Enter the path to your Data Landing Zone folder",
"type":"string",
"isRequired":true,
"readOnly":false,
"hidden":false
},
{
"name":"sep",
"title":"Enter your desired separator for each field and value",
"description":"Enter your desired separator for each field and value",
"type":"string",
"isRequired":false,
"readOnly":false,
"hidden":false
},
{
"name":"encoding",
"title":"Select the desired CSV file encoding",
"description":"Select the desired CSV file encoding",
"type":"string",
"enum":[
"UTF-8",
"UTF-16"
],
"isRequired":false,
"readOnly":false,
"hidden":false
},
{
"name":"quote",
"title":"Quoted values escape character",
"description":"Enter the desired character to be used for escaping quoted values.",
"type":"string",
"isRequired":false,
"readOnly":false,
"hidden":false
},
{
"name":"quoteAll",
"title":"Escape all quoted values",
"description":"Select whether to escape all quoted values.",
"type":"string",
"enum":[
"true",
"false"
],
"default":"true",
"isRequired":true,
"readOnly":false,
"hidden":false
},
{
"name":"escape",
"title":"Quote escaping character",
"description":"Enter the desired character to be used for escaping quotes inside an already quoted value.",
"type":"string",
"isRequired":false,
"readOnly":false,
"hidden":false
},
{
"name":"escapeQuotes",
"title":"Enclose quoted values within quotes",
"description":"Select whether values containing quotes should always be enclosed in quotes.",
"type":"string",
"enum":[
"true",
"false"
],
"isRequired":false,
"default":"true",
"readOnly":false,
"hidden":false
},
{
"name":"header",
"title":"Generate file header.",
"description":"Select whether to write the names of columns as the first line of the exported files.",
"type":"string",
"isRequired":false,
"enum":[
"true",
"false"
],
"readOnly":false,
"default":"true",
"hidden":false
},
{
"name":"ignoreLeadingWhiteSpace",
"title":"Ignore leading white space",
"description":"Select whether leading whitespaces should be trimmed from exported values.",
"type":"string",
"isRequired":false,
"enum":[
"true",
"false"
],
"readOnly":false,
"default":"true",
"hidden":false
},
{
"name":"nullValue",
"title":"NULL value string format",
"description":"Enter the string representation of a NULL value. ",
"type":"string",
"isRequired":false,
"readOnly":false,
"hidden":false
},
{
"name":"dateFormat",
"title":"Date format",
"description":"Enter the desired date format. ",
"type":"string",
"default":"yyyy-MM-dd",
"isRequired":false,
"readOnly":false,
"hidden":false
},
{
"name":"charToEscapeQuoteEscaping",
"title":"Quote escaping escape character",
"description":"Enter the desired character to be used for escaping the escaping of a quote character.",
"type":"string",
"isRequired":false,
"readOnly":false,
"hidden":false
},
{
"name":"emptyValue",
"title":"Empty value string format",
"description":"Enter the string representation of an empty value.",
"type":"string",
"isRequired":false,
"readOnly":false,
"default":"",
"hidden":false
},
{
"name":"compression",
"title":"Compression format",
"description":"Select the desired file compression format.",
"type":"string",
"isRequired":true,
"readOnly":false,
"enum":[
"SNAPPY",
"GZIP",
"DEFLATE",
"NONE"
]
},
{
"name":"fileType",
"title":"File type",
"description":"Select the exported file type.",
"type":"string",
"isRequired":true,
"readOnly":false,
"hidden":false,
"enum":[
"csv",
"json",
"parquet"
],
"default":"csv"
}
],
"uiAttributes":{
"documentationLink":"https://www.adobe.io/apis/experienceplatform.html",
"category":"DLZ",
"connectionType":"Server-to-server",
"frequency":"Batch",
"flowRunsSupported":true,
"monitoringSupported":true
},
"identityNamespaces":{
"adobe_id":{
"acceptsAttributes":true,
"acceptsCustomNamespaces":true
},
"mobile_id":{
"acceptsAttributes":true,
"acceptsCustomNamespaces":true
}
},
"segmentMappingConfig":{
"mapExperiencePlatformSegmentName":false,
"mapExperiencePlatformSegmentId":false,
"mapUserInput":false
},
"destinationDelivery":[
{
"deliveryMatchers":[
{
"type":"SOURCE",
"value":[
"batch"
]
}
],
"authenticationRule":"NONE",
"destinationServerId":"{{instanceID of your destination server}}"
}
],
"schemaConfig":{
"profileRequired":true,
"identityRequired":true,
"segmentRequired":true
},
"batchConfig":{
"allowMandatoryFieldSelection":true,
"autoSelectJoinKeyOnPartnerSchemaSelection":false,
"joinKeyTitle":"DEDUPLICATION KEY",
"defaultExportMode":"DAILY_FULL_EXPORT",
"allowedExportModes":[
"DAILY_FULL_EXPORT",
"FIRST_FULL_THEN_INCREMENTAL"
],
"allowedScheduleFrequency":[
"DAILY",
"EVERY_3_HOURS",
"EVERY_6_HOURS",
"EVERY_12_HOURS",
"EVERY_8_HOURS",
"ONCE",
"EVERY_HOUR"
],
"defaultFrequency":"DAILY",
"defaultStartTime":"00:00",
"filenameConfig":{
"allowedFilenameAppendOptions":[
"SEGMENT_NAME",
"DESTINATION_INSTANCE_ID",
"DESTINATION_INSTANCE_NAME",
"ORGANIZATION_NAME",
"SANDBOX_NAME",
"DATETIME",
"CUSTOM_TEXT"
],
"defaultFilenameAppendOptions":[
"DATETIME"
],
"defaultFilename":"%DESTINATION%_%SEGMENT_ID%"
},
"allowDedupKeyFieldSelection":true
},
"backfillHistoricalProfileData":true
}'
成功响应将返回新的目标配置,包括唯一标识符(instanceId
)。 如果需要进一步提出HTTP请求来更新目标配置,请根据需要存储此值。
根据上述配置,Experience Platform目录现在将显示一张新的专用目标卡供您使用。
在下面的图像和录制中,请注意中的选项 基于文件的目标的激活工作流 匹配您在目标配置中选择的选项。
填写有关目标的详细信息时,请注意这些字段是如何出现在配置中设置的自定义数据字段的。
您向目标配置添加自定义数据字段的顺序未反映在UI中。 自定义数据字段始终按照以下屏幕录制中显示的顺序显示。
在计划导出间隔时,请注意显示的字段是您在 batchConfig
配置。
查看文件名配置选项时,请注意出现的字段如何表示 filenameConfig
您在配置中设置的选项。
如果要调整上述任何字段,请重复 步骤1 和 二 以根据需要修改配置。
如果您正在创建供自己使用的专用目标,并且不想将其发布到目标目录以供其他客户使用,则不需要执行此步骤。
配置目标后,使用 目标发布API 以将您的配置提交到Adobe以供审查。
如果您正在创建供自己使用的专用目标,并且不想将其发布到目标目录以供其他客户使用,则不需要执行此步骤。
如果您是独立软件供应商(ISV)或系统集成商(SI),请创建 产品化集成,使用 自助式文档流程 在中为您的目标创建产品文档页面 Experience Platform目标目录.
阅读本文后,您现在知道如何创作自定义 Data Landing Zone 目标(使用Destination SDK)。 接下来,您的团队可以使用 基于文件的目标的激活工作流 将数据导出到目标。