开发人员入门 get-started-developers

在此页面上:​实施 SDK、事件流、自定义操作端点及 API,将您的应用程序连接到 Adobe Journey Optimizer,从而使您的历程能够基于实时数据运行。

作为​开发人员,您负责将Adobe Journey Optimizer实施并集成到您的应用和系统中。 系统管理员数据工程师为您授予访问权限并准备好环境后,您就可以开始使用 Adobe Journey Optimizer。

NOTE
实施顺序:管理员数据工程师 → 您位于此处: 开发人员营销人员
在实施移动和 Web 集成之前,请确保已配置数据架构和事件

您在 Journey Optimizer 生态系统中的角色

当其他团队成员通过用户界面配置 Journey Optimizer 时,您将专注于以下方面:

  • 在移动端和 web 应用中​实现 SDK
  • 从您的应用程序​ 发送事件 ​以触发历程
  • 构建 API 端点​供 Journey Optimizer 通过自定义操作调用
  • Journey Optimizer 与您现有的系统和基础设施集成
  • 测试和调试​您的实现内容

您的数据工程师将处理数据架构、事件配置和数据源。 您的管理员将设置权限和渠道配置。 营销人员将设计使用您所实现的历程与内容。

本指南涵盖必要的技术实施步骤,助您开始使用 Journey Optimizer。 无论您是构建移动应用程序、web 体验还是 API 集成,请按照以下部分设置您的实施内容。

先决条件 prerequisites

在开始实施之前,请确保您具备以下条件:

类别
要求
技术技能
* 具备 JavaScript(用于 Web SDK)或 Swift/Kotlin(用于 Mobile SDK)经验
* 了解 RESTful API 和 JSON
* 熟悉异步编程和事件驱动型架构
* 了解您所在组织的应用架构
访问权限与工具
* 访问 Adobe Developer Console 以获取 API 凭据
* 可访问应用代码库的开发环境
* 用于 API 测试的工具(如 Postman)
* 浏览器开发者工具或移动端调试工具
来自其他团队成员
*由管理员
授予的环境访问权限 * 来自数据工程师
的 XDM 架构与事件定义 * 来自营销人员的需求与用例

理解技术基础 technical-foundation

在深入实施之前,请先熟悉以下核心技术概念:

  1. Adobe Experience Platform 集成:Journey Optimizer 原生构建于 Adobe Experience Platform 之上。 理解其底层架构将帮助您构建更高效的实施方案。 进一步了解 Journey Optimizer 的工作原理

  2. XDM 数据模型:Journey Optimizer 使用体验数据模型 (XDM) 来构建事件和轮廓数据的结构。 作为开发人员,您需要了解如何发送符合数据工程师配置的数据架构的数据。 了解 XDM 架构

  3. 身份验证和安全性:所有实施都需要进行适当的认证。 了解如何为 SDK 和 API 设置身份验证。 了解 API 身份验证

设置移动应用集成 mobile-integration

配置 Adobe Experience Platform Mobile SDK

Mobile SDK 是您直接在 iOS 或 Android 应用程序中嵌入的库集合。它充当应用程序与 Adobe Experience Platform 之间的通信层:它可识别用户、收集行为事件,并传递来自 Journey Optimizer 的指令 – 包括推送通知、应用内消息和个性化内容。如果没有它,Journey Optimizer 将无法了解您的应用程序用户的行为,也无法联系到他们。

  1. 安装和配置 Mobile SDK:按照Adobe Experience Platform Mobile SDK 文档操作,开始进行 SDK 集成。

  2. 创建移动属性:在 Adobe Experience Platform Data Collection 中设置移动属性。 了解如何创建和配置移动属性

  3. 配置推送通知

    • 针对 iOS 应用:在 APN(Apple 推送通知服务)中注册您的应用。 请在 Apple 文档中了解详情。
    • 对于 Android 应用程序:为 Android 应用程序设置 Firebase Cloud Messaging。 请在 Google 文档中了解详情。
  4. 测试您的移动端集成:使用移动端快速启动工作流来高效配置和测试您的移动端设置。

此页面提供了配置推送通知的详细步骤。

实施基于代码的体验 (Mobile SDK)

通过基于代码的体验,您可以向原生移动应用程序中的任何位置交付个性化内容,从引导屏幕和产品详细信息页面,到应用程序内横幅和功能标记,而无需发布新的应用程序版本。使用 Mobile SDK 在运行时获取和呈现个性化内容,让您的团队可以完全控制投放位置和呈现方式:

实施 web 体验 web-implementation

设置 Adobe Experience Platform Web SDK

Web SDK (alloy.js) 是单个 JavaScript 库,可替代您的网站原本可能需要的一堆零散的 Adobe 标记。它会收集行为数据,通过您配置的数据流将其传输到 Adobe Experience Platform,并接收返回的个性化指令,这一切都在一次网络往返中完成。设置完毕后,Journey Optimizer 即可识别访客、根据其操作触发历程,并立即向您的页面交付定制内容。

  1. 安装 Web SDK:按照 Web SDK 实施指南在您的网站上设置 SDK。

  2. 配置数据流:在 Adobe Experience Platform Data Collection 中创建并配置启用了 Journey Optimizer 的数据流。 有关更多信息,请参阅数据流文档

  3. 启用 Web 推送通知(可选): Web 推送通知现已正式发布。 在 Web SDK 配置中配置 pushNotifications 属性,并使用 sendPushSubscription 命令注册推送订阅。 了解 Web 推送配置

实施基于代码的体验 (Web SDK)

与营销人员完全控制布局的可视化渠道不同,基于代码的体验可让您完全掌控页面上个性化内容的呈现方式。Journey Optimizer 会返回包含个性化数据的 JSON 有效负载;您的代码决定要在何处以及如何显示该有效负载。此模型适用于任何Web表面(主页横幅、推荐轮播、搜索结果排名、A/B测试变体),而无需可视化编辑器或页面发布工作流程。

  1. 选择实施方法:客户端、服务器端或混合模式。 查看每种方法的实施示例

  2. 定义展示界面:确定应用程序中您希望提供个性化内容的位置。 了解展示界面配置

  3. 实施内容渲染:使用 Web SDK 获取和应用个性化内容。 请参阅基于代码的实施教程

  4. 发送展示与交互事件:追踪内容的展示时机以及用户何时与内容交互以进行分析和优化。

浏览 ](https://github.com/adobe/alloy-samples/tree/main/ajo){target=“_blank”}GitHub 上的实施示例[,了解实际应用中的基于代码的体验。

进一步了解基于代码的体验快速入门

实施事件流 event-streaming

发送事件以触发历程

历程在事件上运行 — 用户登录,将项目添加到购物车,完成购买,放弃表单。 你的工作是适时地从你的应用程序中发出这些事件。 每个事件都是发送到 Experience Platform 流式引入 API 的 XDM 结构化 JSON 有效负载;Journey Optimizer 在毫秒内选取它,并将配置文件路由到任何匹配的历程。事件架构和有效负载结构由您的数据工程师定义 — 在开始编码之前与他们协调。

  1. 了解事件负载:与您的数据工程师协作,获取事件架构及所需的负载结构。 负载必须符合其配置的 XDM 架构。 了解事件架构要求

  2. 实施事件流:使用流式数据摄取 API 将事件发送至 Adobe Experience Platform。 了解发送事件的步骤

  3. 处理事件类型

    • 单一事件:针对特定用户的操作(例如按钮点击、购买完成)实现事件发送
    • 业务事件:发送业务相关事件(例如库存更新、价格变更)
  4. 测试事件传递:验证事件是否被正确接收并按预期触发客户历程。 了解事件故障排除

通过 API 发送事件的​实施示例

POST https://{DATACOLLECTION_ENDPOINT}/collection/{DATASTREAM_ID}
Content-Type: application/json

{
  "header": {
    "datasetId": "{DATASET_ID}",
    "imsOrgId": "{ORG_ID}",
    "source": {
      "name": "Web SDK"
    }
  },
  "body": {
    "xdmMeta": {
      "schemaRef": {
        "id": "{SCHEMA_ID}"
      }
    },
    "xdmEntity": {
      "_id": "unique-event-id",
      "eventType": "purchase",
      "timestamp": "2024-01-01T12:00:00Z",
      // ... your event data
    }
  }
}

进一步了解处理历程事件

开发自定义操作端点 custom-actions

当历程达到自定义操作步骤时,Journey Optimizer 会对您提供的 URL(您的后端、CRM、忠诚度平台、任何 REST 端点)进行出站 HTTP 调用。您的工作是构建并公开该端点:定义请求合约(负载结构、身份验证方法、响应格式),实施其背后的业务逻辑,并确保它可以处理 Journey Optimizer 将生成的调用量。然后,您的管理员会在 Journey Optimizer 中注册该端点,以便营销人员可以将其用作其历程中的步骤。

  1. 构建您的 API 端点:创建 RESTful API 端点,供 Journey Optimizer 在历程执行期间调用。 您的端点应:

    • 接受 JSON 负载
    • 身份验证请求(OAuth、API 密钥或 JWT)
    • 在适当的超时限制内处理请求
    • 以预期格式返回响应
  2. 了解自定义操作功能:自定义操作可以连接到第三方系统,如 Epsilon、Slack、Firebase 或您自己的服务。 详细了解自定义操作

  3. 使用操作配置:您的管理员数据工程师将在 Journey Optimizer 中配置自定义操作,定义 API 端点 URL、身份验证方法和参数。 您将向他们提供您的 API 规范。 了解自定义操作配置。 您可以在超时/错误分支中定义可选的​错误响应负载,以实现更丰富的回退逻辑。

  4. 返回可操作数据:设计您的 API 以返回可在后续历程步骤中使用的数据。 了解操作响应

  5. 监视自定义操作运行状况:使用自定义操作监视仪表板跟踪成功的调用、错误、吞吐量、响应时间和队列等待时间。 了解自定义操作报告

  6. 实现速率限制:确保您的端点能够处理预期的请求量。 Journey Optimizer 设有 5000 次/秒的调用限制,但您的系统应具备一定弹性。 了解上限和限制

示例用例:使用自定义操作将历程事件写入 Experience Platform

使用 Journey Optimizer API apis

并非所有事情都需要通过 Journey Optimizer UI 发生。有时,您需要从自己的后端触发营销活动、在隐私请求后禁止显示电子邮件地址,或从外部 CMS 同步内容模板。 Journey Optimizer 的 REST API 允许您以编程方式访问平台的核心功能。所有调用都使用 OAuth 服务器到服务器身份验证 — 旧版 JWT 方法已弃用。

  1. 了解 API 功能: Journey Optimizer API 允许您以编程方式创建、读取、更新和删除各种资源。 了解 Journey Optimizer API

  2. 身份验证:按照本教程,使用 Adobe Developer Console 设置 API 身份验证。

  3. 浏览 API 参考文档:浏览完整的 API 文档,并直接在 Adobe Journey Optimizer API 参考中尝试 API 调用。

  4. API 触发的营销活动:通过 API 触发的营销活动构建交易型消息。 针对高流量场景(最高可达 5000 TPS),可探索使用高吞吐量模式(需要附加许可证)。

  5. 决策管理 API:使用专门的 API 进行产品建议管理和决策。 在决策管理 API 指南中了解更多信息。

  6. Decisioning 迁移 API:以编程方式将决策管理实体迁移到 Decisioning,它具有灵活的迁移范围、自动验证和回滚支持。 在 Decisioning 迁移 API 指南中了解详情。

  7. 短信 Webhook:配置入站 Webhook 以捕获传入消息,并配置反馈 Webhook 以接收投放回执和状态更新。 了解详情

测试与调试 testing

在实施上线之前,您需要确信事件会在正确的时间触发,历程会按预期触发,自定义操作会在实际负载下运行,并且个性化内容会正确呈现。 本节介绍用于及早发现问题的工具和技术,从低级别的SDK日志记录到使用真实用户档案进行的端到端历程测试运行。

  1. 调试 SDK 实施:使用 Adobe Experience Platform Assurance 检查 SDK 事件、验证数据收集并随时排查集成问题。 进一步了解 Assurance

  2. 测试事件传递:验证您应用程序发出的事件是否被 Adobe Experience Platform 正确接收并按预期触发历程。 监控事件摄取过程并验证有效负载结构。

  3. 验证 API 集成:测试您的自定义操作端点,以确保其能正确处理 Journey Optimizer 请求、在超时限制内响应,并返回预期的数据格式。

  4. 对测试轮廓使用测试模式:与数据工程师协作获取对测试轮廓的访问权限,然后使用历程测试模式验证您的实施。 了解如何测试历程

  5. 监控 SDK 日志:在您的 SDK 实现中启用调试日志记录,以便在开发期间排查问题:

    • Mobile SDK:启用日志记录以查看 SDK 事件和 API 调用
    • Web SDK:使用浏览器控制台监控 SDK 活动
  6. 验证数据流配置:确保您的数据流已正确配置,可将数据发送至 Journey Optimizer。 检查事件是否通过数据流传递至正确的目标位置。

  7. 查询历程数据以供分析:在数据湖上使用 SQL 查询来分析历程步骤事件、调试问题并监控自定义操作性能。 探索用于历程分析的查询示例,包括:

    • 轮廓进入/退出追踪和丢弃原因分析
    • 自定义操作性能指标(延迟、吞吐量、错误率)
    • 事件交付和错误模式
    • 历程实例状态

高级开发人员主题 advanced-topics

在您的核心 SDK、事件和 API 准备就绪后,这些主题将帮助您更进一步:在运行时扩充历程数据而不会导致轮廓臃肿,处理同意信号以使选择退出的操作传播到每个集成点,调整您的实施以达到生产规模所需的吞吐量和可靠性。

处理上下文数据和扩充

历程通常需要的数据多于触发事件中提供的数据 — 产品名称、忠诚度等级和订单行项目列表。 上下文扩充允许您的历程在运行时从 AEP 数据集中查找此类数据,或从自定义操作响应中将其承接过来,而不是将所有这些数据预先加载到每个轮廓中。然后,您的消息和分支条件可以引用该数据,而无需将其永久存储在轮廓中。

  • 对数组进行迭代:使用 Handlebars 语法在消息中展示来自事件、自定义操作响应及数据集查询的动态列表。 了解迭代上下文数据
  • 数据集查找:实施数据集查找以扩充 Adobe Experience Platform 数据集的历程数据。 与您的数据工程师协作进行配置。 了解数据集查找

处理同意与治理

Journey Optimizer 在平台级别实施数据治理和同意策略,但您的集成也需要尊重它们。当客户选择退出营销通信,或当数据使用标签限制字段的使用方式时,这些规则需要在自定义操作和数据集查找中传播 — 而不仅仅是在 UI 中阻止操作。

  • 数据治理:将数据使用策略应用于自定义操作。 进一步了解数据治理
  • 同意管理:在您的实施中处理客户同意偏好设置。 了解同意

优化与最佳实践

生产Journey Optimizer实施每秒会定期处理数百万个事件和数千次旅程执行。 这些资源可帮助您针对该规模调整集成 — 在点击速率限制之前了解这些限制,避免静默丢弃用户档案的常见历程设计隐患,以及构建可正常降低而不是不透明地失败的错误处理。

调用 Journey Optimizer REST API rest-apis

除了实施 SDK 和事件流之外,您还可以以编程方式从您自己的系统中驱动 Journey Optimizer。完整的 API 引用、OpenAPI 规格和代码示例可在 Journey Optimizer 开发人员门户上找到。

NOTE
所有集成都必须使用 OAuth 服务器到服务器身份验证 — JWT 方法已被弃用。设置身份验证

API 触发的营销活动 api-triggered

使用交互式消息执行REST API触发来自外部系统的事务性或营销消息。 在调用端点之前:

  • 营销活动必须是​ 激活 ​的,之后端点才接受调用。
  • 调用的​超时为60秒;内部重试处理意外超时。
  • 如果配置了营销活动开始/结束日期,则超出这些日期的 API 调用将失败。
  • 要构建负载,请在 Journey Optimizer UI 中从运行中营销活动的 cURL 请求​部分中检索生成的示例 cURL 请求 – 其中包括该营销活动的所有个性化变量。
  • 标准和高吞吐量营销活动使用不同的端点。

API引用 · 代码示例 · 使用API触发的营销活动

外部端点的上限和限制 capping-throttling

当历程通过自定义操作或数据源调用外部系统时,上限和限制 API 会保护这些系统免受过载。设置上限可拒绝超出配置限制的调用;限制可调用排队长达 6 小时(仅生产沙盒、自定义操作)。

上限API引用 · 使用上限API · 使用限制API

更多 REST API more-rest-apis

除了消息传递和上限之外,Journey Optimizer 还公开 REST 端点,以用于禁止管理、内容模板、营销活动检索、校对,以及编排营销活动的执行。当您需要自动执行操作而这些操作原本需要在 UI 中手动完成时,请使用这些选项 — 例如,在数据提取后批量隐藏地址,或从外部内容管道同步模板

您需要执行哪些操作?
API 参考
以编程方式从发送中排除电子邮件地址或域
禁止列表 API · 管理禁止列表
检索历程元数据以进行审核或外部同步
历程API
从外部管道创建和管理内容模板和片段
内容API · 模板 · 片段
检索和过滤操作型营销活动
营销活动 API
预览营销活动并以编程方式发送校样
模拟API
NOTE
模拟 API 可用于 API 触发和操作型(计划)营销活动。不支持用于编排营销活动:请改用编排营销活动用户界面中的预览和校样工作流。

|验证数据集并触发编排的活动执行 | 数据集验证 · 触发器 · 启用数据集 |

其他资源 additional-resources

跨角色协作 next-steps

您的实施工作与其他团队成员相互关联:

与数据工程师协作

数据工程师协作处理数据和事件配置:对用户行为做出反应的每个历程都取决于您发送的事件 — 数据工程师定义架构,您实施生成这些架构的代码。

与管理员协作

管理员就访问权限和配置进行协作。历程只能通过管理员设置的渠道联系用户 — 尽早协调,以便您的 SDK 工作及其配置保持同步。

与营销人员协作

营销人员就历程设计和测试进行协作。营销人员构建历程和内容完全取决于您发送的事件和公开的界面 — 您对齐得越近,历程上线的速度就越快。

开始实施

准备好开始构建了吗? 从以上部分中选择您的首个实施领域:

  1. 移动应用程序?Mobile SDK 集成开始
  2. 网站?Web SDK 设置开始
  3. API 集成? 跳转到使用 API
  4. 自定义系统? 查看自定义操作

每个部分都包含指向详细技术文档、代码示例和教程的链接,以指导您的实施工作。

其他角色指南 other-role-guides

角色
指南
管理员
新管理员快速入门
数据工程师
面向数据工程师的快速入门
开发人员
开发人员入门
营销人员
营销人员快速入门

返回角色和职责概述 · 返回快速入门

recommendation-more-help
journey-optimizer-help