使用API为Profile和Identity Service启用数据集
本教程介绍了启用数据集以在Real-Time Customer Profile和Identity Service中使用的过程,分为以下步骤:
-
使用以下两个选项之一启用要在Real-Time Customer Profile中使用的数据集:
快速入门
本教程需要对管理启用了配置文件的数据集所涉及的几项Adobe Experience Platform服务有一定的了解。 在开始本教程之前,请查看以下相关Experience Platform服务的文档:
- Real-Time Customer Profile:根据来自多个源的汇总数据,提供统一的实时使用者个人资料。
- Identity Service:通过桥接从被摄取到Experience Platform中的不同数据源的标识来启用Real-Time Customer Profile。
- Catalog Service: RESTful API,允许您为Real-Time Customer Profile和Identity Service创建数据集并配置它们。
- Experience Data Model (XDM): Experience Platform用于组织客户体验数据的标准化框架。
以下部分提供了成功调用Experience Platform API所需了解的其他信息。
正在读取示例 API 调用
本教程提供了示例API调用来演示如何格式化请求。 这些包括路径、必需的标头和格式正确的请求负载。 还提供了在 API 响应中返回的示例 JSON。 有关示例 API 调用的文档中所用惯例的信息,请参阅故障排除指南中的如何读取示例 API 调用 Experience Platform。
收集所需标头的值
为调用 Experience Platform API,您必须先完成身份验证教程。 完成身份验证教程会提供所有 Experience Platform API 调用中每个所需标头的值,如下所示:
Authorization: Bearer {ACCESS_TOKEN}x-api-key: {API_KEY}x-gw-ims-org-id: {ORG_ID}
包含有效负载(POST、PUT、PATCH)的所有请求都需要额外的Content-Type标头。 必要时,此标头的正确值会显示在示例请求中。
Experience Platform中的所有资源都被隔离到特定的虚拟沙盒中。 对Experience Platform API的所有请求都需要x-sandbox-name标头,用于指定将在其中执行操作的沙盒的名称。 有关Experience Platform中沙盒的更多信息,请参阅沙盒概述文档。
创建为配置文件和身份启用的数据集 create-a-dataset-enabled-for-profile-and-identity
您可以在创建数据集后立即或创建数据集后的任何时间点为Real-time Customer Profile和Identity Service启用数据集。 如果要启用已创建的数据集,请按照配置此文档中稍后找到的现有数据集的步骤操作。
要创建为配置文件启用的数据集,您可以使用POST请求到/dataSets端点。
API格式
POST /dataSets
请求
通过在请求正文中的tags下包含unifiedProfile和unifiedIdentity,将分别立即为Profile和Identity Service启用数据集。 这些标记的值必须是包含字符串"enabled:true"的数组。
curl -X POST \
https://platform.adobe.io/data/foundation/catalog/dataSets \
-H 'Content-Type: application/json' \
-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}' \
-d '{
"schemaRef": {
"id": "https://ns.adobe.com/{TENANT_ID}/schemas/31670881463308a46f7d2cb09762715",
"contentType": "application/vnd.adobe.xed-full-notext+json; version=1"
},
"tags": {
"unifiedProfile": ["enabled:true"],
"unifiedIdentity": ["enabled:true"]
}
}'
schemaRef.id{TENANT_ID}响应
成功的响应显示了一个数组,该数组包含"@/dataSets/{DATASET_ID}"形式的新创建数据集的ID。 成功创建并启用数据集后,请继续执行上传数据的步骤。
[
"@/dataSets/5b020a27e7040801dedbf46e"
]
配置现有数据集 configure-an-existing-dataset
以下步骤介绍了如何为Real-Time Customer Profile和Identity Service启用之前创建的数据集。 如果您已经创建了启用配置文件的数据集,请继续执行摄取数据的步骤。
检查数据集是否已启用 check-if-the-dataset-is-enabled
使用Catalog API,您可以检查现有数据集以确定是否已启用它以便在Real-Time Customer Profile和Identity Service中使用。 以下调用将按ID检索数据集的详细信息。
API格式
GET /dataSets/{DATASET_ID}
{DATASET_ID}请求
curl -X GET \
'https://platform.adobe.io/data/foundation/catalog/dataSets/5b020a27e7040801dedbf46e' \
-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}'
响应
{
"5b020a27e7040801dedbf46e": {
"name": "Commission Program Events DataSet",
"imsOrg": "{ORG_ID}",
"tags": {
"adobe/pqs/table": [
"unifiedprofileingestiontesteventsdataset"
],
"unifiedProfile": [
"enabled:true"
],
"unifiedIdentity": [
"enabled:true"
]
},
"version": "1.0.1",
"created": 1536536917382,
"updated": 1539793978215,
"createdClient": "{CLIENT_CREATED}",
"createdUser": "{CREATED_BY}",
"updatedUser": "{CREATED_BY}",
"viewId": "5b020a27e7040801dedbf46f",
"files": "@/dataSetFiles?dataSetId=5b020a27e7040801dedbf46e",
"schema": "@/xdms/context/experienceevent",
"schemaRef": {
"id": "https://ns.adobe.com/xdm/context/experienceevent",
"contentType": "application/vnd.adobe.xed+json"
}
}
}
在tags属性下,您可以看到unifiedProfile和unifiedIdentity都存在,且值为enabled:true。 因此,已为此数据集分别启用Real-Time Customer Profile和Identity Service。
启用数据集 enable-the-dataset
如果尚未为Profile或Identity Service启用现有数据集,则可以通过使用该数据集ID发出PATCH请求来启用它。
API格式
PATCH /dataSets/{DATASET_ID}
{DATASET_ID}请求
curl -X PATCH \
https://platform.adobe.io/data/foundation/catalog/dataSets/5b020a27e7040801dedbf46e \
-H 'Content-Type:application/json-patch+json' \
-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}' \
-d '[
{ "op": "add", "path": "/tags/unifiedProfile", "value": ["enabled:true"] },
{ "op": "add", "path": "/tags/unifiedIdentity", "value": ["enabled:true"] }
]'
请求正文包含path到两种类型的标记: unifiedProfile和unifiedIdentity。 每个的value都是包含字符串enabled:true的数组。
响应
成功的PATCH请求会返回HTTP状态200 (正常)以及包含已更新数据集的ID的数组。 此ID应该与PATCH请求中发送的ID匹配。 unifiedProfile和unifiedIdentity标记现已添加,并且数据集已允许配置文件和身份服务使用。
[
"@/dataSets/5b020a27e7040801dedbf46e"
]
将数据摄取到数据集 ingest-data-into-the-dataset
Real-Time Customer Profile和Identity Service都使用XDM数据,因为它正在被摄取到数据集中。 有关如何将数据上载到数据集的说明,请参阅有关使用API创建数据集的教程。 在计划向启用了Profile的数据集发送哪些数据时,请考虑以下最佳实践:
- 包括要用作分段标准的任何数据。
- 包括可从配置文件数据中确定的任意数量的标识符,以最大化您的身份图。 这允许Identity Service更有效地跨数据集拼合身份。
确认Real-Time Customer Profile摄取的数据 confirm-data-ingest-by-real-time-customer-profile
首次将数据上载到新数据集时,或者作为涉及新ETL或数据源的流程的一部分,建议仔细检查数据,以确保数据已按预期上载。 使用Real-Time Customer Profile访问API,您可以在批次数据加载到数据集时检索批次数据。 如果无法检索任何预期的实体,则可能无法为Real-Time Customer Profile启用数据集。 确认已启用数据集后,请确保源数据格式和标识符支持您的期望。 有关如何使用Real-Time Customer Profile API访问Profile数据的详细说明,请参阅实体端点指南,也称为“Profile Access”API。
确认由Identity服务摄取数据 confirm-data-ingest-by-identity-service
摄取的每个包含多个身份的数据片段都会在专用身份图中创建链接。 有关身份图形和访问身份数据的详细信息,请先阅读身份服务概述。