使用API为Profile和Identity Service启用数据集

本教程介绍了启用数据集以在Real-Time Customer Profile和Identity Service中使用的过程,分为以下步骤:

  1. 使用以下两个选项之一启用要在Real-Time Customer Profile中使用的数据集:

  2. 将数据摄取到数据集

  3. 确认通过实时客户资料摄取数据

  4. 确认身份服务摄取的数据

快速入门

本教程需要对管理启用了配置文件的数据集所涉及的几项Adobe Experience Platform服务有一定的了解。 在开始本教程之前,请查看以下相关Platform服务的文档:

  • Real-Time Customer Profile:根据来自多个源的汇总数据,提供统一的实时使用者个人资料。
  • Identity Service:通过桥接从被摄取到Platform中的不同数据源的标识来启用Real-Time Customer Profile。
  • Catalog Service: RESTful API,允许您为Real-Time Customer Profile和Identity Service创建数据集并配置它们。
  • Experience Data Model (XDM): Platform用于组织客户体验数据的标准化框架。

以下部分提供了成功调用Platform API所需了解的其他信息。

正在读取示例 API 调用

本教程提供了示例API调用来演示如何格式化请求。 这些包括路径、必需的标头和格式正确的请求负载。还提供了在 API 响应中返回的示例 JSON。有关示例API调用文档中使用的约定的信息,请参阅Experience Platform疑难解答指南中有关如何读取示例API调用的部分。

收集所需标头的值

要调用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中的所有资源都被隔离到特定的虚拟沙盒中。 对Platform API的所有请求都需要x-sandbox-name标头,用于指定将在其中执行操作的沙盒的名称。 有关Platform中沙盒的更多信息,请参阅沙盒概述文档

创建为配置文件和身份启用的数据集 create-a-dataset-enabled-for-profile-and-identity

您可以在创建数据集后立即或创建数据集后的任何时间点为Real-time Customer Profile和Identity Service启用数据集。 如果要启用已创建的数据集,请按照配置此文档中稍后找到的现有数据集的步骤操作。

NOTE
要创建新的启用配置文件的数据集,您必须知道为配置文件启用的现有XDM架构的ID。 有关如何查找或创建启用配置文件的架构的信息,请参阅关于使用架构注册表API 创建架构的教程

要创建为配置文件启用的数据集,您可以使用对/dataSets端点的POST请求。

API格式

POST /dataSets

请求

通过在请求正文中的tags下包含unifiedProfileunifiedIdentity,将分别立即为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
数据集将基于启用了Profile的架构的ID。
{TENANT_ID}
Schema Registry中包含属于您组织的资源的命名空间。 有关详细信息,请参阅Schema Registry开发人员指南的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}
要检查的数据集的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属性下,您可以看到unifiedProfileunifiedIdentity都存在,且值为enabled:true。 因此,已为此数据集分别启用Real-Time Customer Profile和Identity Service。

启用数据集 enable-the-dataset

如果尚未为Profile或Identity Service启用现有数据集,则可以通过使用数据集ID发出PATCH请求来启用它。

API格式

PATCH /dataSets/{DATASET_ID}
参数
描述
{DATASET_ID}
要更新的数据集的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到两种类型的标记: unifiedProfileunifiedIdentity。 每个的value都是包含字符串enabled:true的数组。

响应

成功的PATCH请求会返回HTTP状态200 (正常)以及包含已更新数据集的ID的数组。 此ID应该与PATCH请求中发送的ID匹配。 unifiedProfileunifiedIdentity标记现已添加,并且数据集已允许配置文件和身份服务使用。

[
    "@/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

摄取的每个包含多个身份的数据片段都会在专用身份图中创建链接。 有关身份图形和访问身份数据的详细信息,请先阅读身份服务概述

recommendation-more-help
c5c02be6-79a3-4a2f-b766-136bffe8b676