验证和访问 Experience Platform API

此文档分步说明了如何获取 Adobe Experience Platform 开发人员帐户访问权限以调用 Experience Platform API。在本教程结束时,您将生成所有平台API调用所需的以下凭据:

  • {ACCESS_TOKEN}
  • {API_KEY}
  • {ORG_ID}

为了维护应用程序和用户的安全性,必须使用OAuth和JSON Web令牌(JWT)等标准对Adobe I/OAPI的所有请求进行身份验证和授权。 JWT与特定于客户端的信息一起使用,以生成您的个人访问令牌。

本教程介绍如何收集所需的凭据来验证Platform API调用,如以下流程图中所述:

先决条件

要成功调用Experience PlatformAPI,您必须具备以下条件:

  • 有权访问Adobe Experience Platform的IMS组织。
  • 能够将您添加为产品配置文件的开发人员和用户的Admin Console管理员。

您还必须具有Adobe ID才能完成本教程。 如果您没有Adobe ID,则可以使用以下步骤创建一个:

  1. 转到 Adobe Developer控制台.
  2. 选择 创建新帐户.
  3. 完成注册流程。

获取开发人员和用户访问权限以进行Experience Platform

在Adobe Developer Console上创建集成之前,您的帐户必须拥有Adobe Admin Console中Experience Platform产品配置文件的开发人员和用户权限。

获取开发人员访问权限

联系 Admin Console 组织中的管理员,可使用 Admin Console. 请参阅 Admin Console 有关如何操作的特定说明的文档 管理产品配置文件的开发人员访问权限.

将您分配为开发人员后,即可在 Adobe Developer控制台. 这些集成是从外部应用程序和服务到AdobeAPI的管道。

获取用户访问权限

您的 Admin Console 管理员还必须将您作为用户添加到同一产品配置文件。 请参阅 管理用户组 Admin Console 以了解更多信息。

生成API密钥、IMS组织ID和客户端密钥

注意

如果您从 Privacy ServiceAPI指南,您现在可以返回该指南以生成 Privacy Service.

在您通过 Admin Console,下一步是生成 {ORG_ID}{API_KEY} 凭据。 这些凭据只需生成一次,即可在以后的Platform API调用中重复使用。

将Experience Platform添加到项目

转到 Adobe Developer控制台 然后使用您的Adobe ID登录。 接下来,按照 创建空项目 (在Adobe Developer控制台文档中)。

创建新项目后,选择 添加API项目概述 屏幕。

添加API 屏幕。 选择Adobe Experience Platform的产品图标,然后选择 Experience PlatformAPI 选择 下一个.

从此处,按照 使用服务帐户(JWT)向项目添加API (从“配置API”步骤开始)以完成该过程。

重要

在上述链接过程中,浏览器会按照特定步骤自动下载私钥和关联的公共证书。 请注意,此私钥存储在您的计算机上的位置,因为在本教程的后续步骤中需要它。

收集凭据

将API添加到项目后, Experience PlatformAPI 项目的页面显示了所有对Experience PlatformAPI的调用所需的以下凭据:

  • {API_KEY} (客户端ID)
  • {ORG_ID} (组织 ID)

除了上述凭据之外,您还需要生成 客户端密钥 以备将来之需。 选择 检索客户端密钥 以显示值,然后复制该值以供日后使用。

生成JSON Web令牌(JWT)

下一步是根据您的帐户凭据生成JSON Web令牌(JWT)。 此值用于生成 {ACCESS_TOKEN} 用于Platform API调用的凭据,必须每24小时重新生成一次。

重要

在本教程中,以下步骤将简要介绍如何在开发人员控制台中生成JWT。 但是,此生成方法只应用于测试和评估目的。

为了正常使用,必须自动生成JWT。 有关如何以编程方式生成JWT的更多信息,请参阅 服务帐户验证指南 在Adobe Developer。

选择 服务帐户(JWT) 在左侧导航中,选择 生成JWT.

生成自定义JWT,粘贴之前将Platform API添加到服务帐户时生成的私钥的内容。 然后,选择 生成令牌.

页面会更新以显示生成的JWT,以及允许您生成访问令牌的示例cURL命令。 在本教程中,请选择 复制 下一页 生成的JWT 将令牌复制到剪贴板。

生成访问令牌

生成JWT后,即可在API调用中使用它来生成 {ACCESS_TOKEN}. 与 {API_KEY}{ORG_ID},则必须每24小时生成一个新令牌,才能继续使用Platform API。

请求

以下请求会生成一个新 {ACCESS_TOKEN} 基于有效负载中提供的凭据。 此端点仅接受表单数据作为其有效负载,因此必须为其指定 Content-Type 标题 multipart/form-data.

curl -X POST https://ims-na1.adobelogin.com/ims/exchange/jwt \
  -H 'Content-Type: multipart/form-data' \
  -F 'client_id={API_KEY}' \
  -F 'client_secret={SECRET}' \
  -F 'jwt_token={JWT}'
属性 描述
{API_KEY} {API_KEY} (客户端ID) 上一步.
{SECRET} 您在 上一步.
{JWT} 您在 上一步.
注意

您可以使用相同的API密钥、客户端密钥和JWT为每个会话生成新的访问令牌。 这允许您在应用程序中自动生成访问令牌。

响应

{
  "token_type": "bearer",
  "access_token": "{ACCESS_TOKEN}",
  "expires_in": 86399992
}
属性 描述
token_type 返回的令牌类型。 对于访问令牌,此值始终为 bearer.
access_token 生成的 {ACCESS_TOKEN}. 此值前缀为单词 Bearer,作为 Authentication 所有平台API调用的标头。
expires_in 在访问令牌过期之前的剩余毫秒数。 此值达到0后,必须生成新的访问令牌才能继续使用Platform API。

测试访问凭据

收集了所有三个必需的凭据后,您可以尝试进行以下API调用。 此调用列出所有标准 Experience Data Model (XDM)类可供您的组织使用。

请求

curl -X GET https://platform.adobe.io/data/foundation/schemaregistry/global/classes \
  -H 'Accept: application/vnd.adobe.xed-id+json' \
  -H 'Authorization: Bearer {ACCESS_TOKEN}' \
  -H 'x-api-key: {API_KEY}' \
  -H 'x-gw-ims-org-id: {ORG_ID}'

响应

如果您的响应与下面显示的响应类似,则您的凭据有效且有效。 (此响应因空格而被截断。)

{
  "results": [
    {
        "title": "XDM ExperienceEvent",
        "$id": "https://ns.adobe.com/xdm/context/experienceevent",
        "meta:altId": "_xdm.context.experienceevent",
        "version": "1"
    },
    {
        "title": "XDM Individual Profile",
        "$id": "https://ns.adobe.com/xdm/context/profile",
        "meta:altId": "_xdm.context.profile",
        "version": "1"
    }
  ]
}

使用Postman验证和测试API调用

Postman 是一款通用工具,允许开发人员探索和测试RESTful API。 此 中等帖子 介绍如何设置Postman以自动执行JWT身份验证,并使用它来使用Platform API。

后续步骤

通过阅读本文档,您收集并成功测试了Platform API的访问凭据。 您现在可以遵循 文档.

除了在本教程中收集的身份验证值之外,许多Platform API还需要有效的 {SANDBOX_NAME} 将作为标头提供。 请参阅 沙箱概述 以了解更多信息。

在此页面上