# 设置行为生命周期回传

动作生命周期回传有两种主要类型。 **全局级别** 为您的整个账户创建回传，并且 **事件级别** 为特定事件类型创建回传。请选择最符合您需求的选项，以了解更多有关设置流程的信息。

{% hint style="warning" %}
**警告：** 对于全局级别回传，您应在每次发生“非标准”事件时收到回传，例如修改或撤销。请注意，事件级别回传不会触发非标准动作生命周期事件。
{% endhint %}

#### 设置动作生命周期回传

<details>

<summary>设置全局级别动作生命周期回传</summary>

本节将介绍一次性为您的整个账户创建回传。只有一个系统可以接收并处理这些回传的合作伙伴，或者希望在所有非标准事件发生时收到通知的合作伙伴，应设置全局级别动作生命周期回传。

{% hint style="info" %}
**注意：** 如果您希望对接收回传的事件类型进行更有选择性地控制，请参阅下面的部分以设置 *事件级别动作生命周期回传*.
{% endhint %}

1. 在顶部导航栏中，选择 ![](https://1152657667-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2Fb2rE79d9UhOKZQLgzSqx%2Fuploads%2Fgit-blob-1183576591b45997efe4dc81a25024640591d02a%2F245137dc972a7a7f6165b59538fcdbac8fd5bd8fee4ba9f20c1a2982c5b58b57.svg?alt=media) **\[用户资料] → 设置**.
2. 在 *技术*下，选择 **事件通知**.
3. 在 *动作生命周期事件*下，选择 ![](https://1152657667-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2Fb2rE79d9UhOKZQLgzSqx%2Fuploads%2Fgit-blob-6027673a720a6522269e1861ad0554c4a85baf29%2F9dcf248c757a094c6af27798e61091b8425a0afa1637ae0e5ba3448c5f85b1a1.svg?alt=media) **\[编辑]**.
4. 输入您服务器的 URL。这是 impact.com 将发送回传的 URL。
5. 选择您偏好的 HTTP 方法。
   * 查看 impact.com 的一些 [可用正文参数](https://docs.google.com/spreadsheets/d/1420vz0__zjit30O_jU959L600LigsUN5iFf2oYwU-RU/edit?usp=sharing).
   * 如果您选择 **POST**，则需要输入请求正文并选择一个 **正文格式**。下面是一个示例，说明如何为 JSON 格式映射每个数据点。每个键值对中的键应来自您自己系统的设置，而值将是您选择的、impact.com 提供的对应数据点，并且应以方括号 `{ }`.

     <div data-with-frame="true"><figure><img src="https://1152657667-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2Fb2rE79d9UhOKZQLgzSqx%2Fuploads%2Fgit-blob-16c42a102e36c3c3d44b22c66b31b8cf4643aae1%2F6c821ff8c8e1cfaea1b1d7c908754dd4db816de21d5db59b4ddbd07bf14b1bb4.jpg?alt=media" alt=""><figcaption></figcaption></figure></div>
   * 没有看到您需要的值？请联系您的客户经理（或 [联系支持](https://app.impact.com/support/portal.ihtml)).
6. 选择 **动作生命周期事件**。这些设置是可选的。
   * 输入一个 **HTTP 标头**。如果需要多个键值对，请用分号分隔。
   * 输入一个 **最小延迟** ，即非标准事件发生与回传生成并发送到您的系统之间的时间。
   * 为 **最大请求数** impact.com 每秒可向您的系统发出的请求设置速率限制。
   * 输入您希望 **成功响应** 对回传返回的内容。
   * 输入您希望 **错误响应** 对回传返回的内容。
7. 选择 **保存**.

现在您已经设置了全局级别回传，当非标准事件发生时，无论执行该非标准操作的是哪个品牌，您的系统都应开始接收回传。要了解如何测试新的回传设置，请查看下面的 *测试动作生命周期回传* 部分。

**动态值示例**

如果您已为跟踪链接配置了动态变量，您可以将回传 URL 配置到您自己的服务器，以便在动作发生时通知您，并检索与该动作关联的动态填充值。

此示例说明如何将一个 `SharedId` 值（您希望与品牌共享的值）传递给回传中的一个参数（`MyParam`）。某些品牌可能要求您进行此配置。

<div data-with-frame="true"><figure><img src="https://1152657667-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2Fb2rE79d9UhOKZQLgzSqx%2Fuploads%2Fgit-blob-b7c6cf339a60877d5823e6b9a080e8e153aa6386%2F8ec14f7b9f75bc6065c6310d30d43ae0f8256c7e075757d03ce64a5fe16476ae.png?alt=media" alt=""><figcaption></figcaption></figure></div>

回传 URL 看起来可能像这样：

`https://postback.example.com/postback?secure=ed7e46f&MyParam={SharedId}`

回传 URL 将把 `MyParam` 参数填充为从 `SharedId`.

</details>

<details>

<summary>设置事件级别动作生命周期回传</summary>

本节将介绍为您驱动动作时所跟踪的特定事件类型创建回传。如果您希望对接收回传的事件类型进行更有选择性地控制，则应设置事件级别动作生命周期回传。

{% hint style="info" %}
**注意：** 如果您已设置全局级别动作生命周期回传，则无需再设置事件级别回传。
{% endhint %}

1. 在顶部导航栏中，选择 **发现 → 我的品牌**.
2. 选择拥有您要测试的回传的品牌卡片。
3. 在品牌名称下，选择 ![](https://1152657667-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2Fb2rE79d9UhOKZQLgzSqx%2Fuploads%2Fgit-blob-8ec3e877b1397045c61d394485e72ac4d93120ee%2Fc6ddb46c637059f06e86c790a911217a9428f5c47b5efef046f90555e85b03cd.svg?alt=media) **\[更多]** → **跟踪集成**.
4. 在页面右上角附近，选择 **添加回传**.
5. 选择您要为其设置动作生命周期回传的事件类型（以前称为 *动作跟踪器*）。
6. 输入您服务器的 URL。这是 impact.com 将发送回传的 URL。
7. 选择您偏好的 HTTP 方法。
   * 如果您选择 **POST**，则需要输入请求正文并选择一个 **正文格式**。下面是一个示例，说明如何为 JSON 格式映射每个数据点。每个键值对中的键应来自您自己系统的设置，而值将是您选择的、impact.com 提供的对应数据点，并且应以花括号 { } 括起来输入。

     <div data-with-frame="true"><figure><img src="https://1152657667-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2Fb2rE79d9UhOKZQLgzSqx%2Fuploads%2Fgit-blob-9cec675aa05964dd4b9db329acc2cae7a9d85de8%2Fd34ce186243db11585c9d497d92cc26b633031bbab0d67ae06fc109dae4ceb0d.jpg?alt=media" alt=""><figcaption></figcaption></figure></div>
   * 查看 impact.com 的一些 [可用正文参数](https://docs.google.com/spreadsheets/d/1420vz0__zjit30O_jU959L600LigsUN5iFf2oYwU-RU/edit?usp=sharing).
   * 没有看到您需要的值？请联系您的客户经理（或 [联系支持](https://app.impact.com/support/portal.ihtml)).
8. 选择 **显示高级设置**。这些设置是可选的。
   * 输入一个 **最小延迟** ，即非标准事件发生与回传生成并发送到您的系统之间的时间。
   * 为 **最大请求数** impact.com 每秒可向您的系统发出的请求设置速率限制。
   * 输入您希望 **成功响应** 对回传返回的内容。
   * 输入您希望 **错误响应** 对回传返回的内容。
9. 选择 **保存**.

现在您已经设置了事件级别回传，您的系统应开始接收您在 *第 5 步*中选择的事件类型的回传。要了解如何测试新的回传设置，请查看 *测试动作生命周期回传* 部分。

**动态值示例**

如果您已为跟踪链接配置了动态变量，您可以将回传 URL 配置到您自己的服务器，以便在动作发生时通知您，并检索与该动作关联的动态填充值。

此示例说明如何将一个 `SharedId` 值（您希望与品牌共享的值）传递给回传中的一个参数（`MyParam`）。某些品牌可能要求您进行此配置。

<div data-with-frame="true"><figure><img src="https://1152657667-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2Fb2rE79d9UhOKZQLgzSqx%2Fuploads%2Fgit-blob-b7c6cf339a60877d5823e6b9a080e8e153aa6386%2F8ec14f7b9f75bc6065c6310d30d43ae0f8256c7e075757d03ce64a5fe16476ae.png?alt=media" alt=""><figcaption></figcaption></figure></div>

回传 URL 看起来可能像这样：

`https://postback.example.com/postback?secure=ed7e46f&MyParam={SharedId}`

回传 URL 将把 `MyParam` 参数填充为从 `SharedId`.

</details>

#### 测试动作生命周期回传

一旦您设置了动作生命周期回传，无论其适用级别如何，都应进行测试。您可以在 impact.com 中运行测试回传（仅适用于事件级别回传），或执行一次转化。

如果 impact.com 向您的目标 URL 发送回传时失败，impact.com 会自动重试发送。impact.com 最多会总共重试失败的回传 15 次。对于来自 `400` 到 `500`的 HTTP 响应，impact.com 会跳过前 3 次重试。有关完整的重试计划和故障排除详情，请参阅 [测试并排查回传 URL](https://app.gitbook.com/s/b2rE79d9UhOKZQLgzSqx/what-would-you-like-to-learn-about/platform-features/action-management/event-notifications-and-postbacks/test-and-troubleshoot-a-postback-url).

<details>

<summary>在 impact.com 中运行测试回传</summary>

如果您设置了事件级别回传，那么您可以在自己的 impact.com 账户中对其进行测试。

1. 在顶部导航栏中，选择 **发现 → 我的品牌**.
2. 选择拥有您要测试的回传的品牌卡片。
3. 在品牌名称下，选择 ![](https://1152657667-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2Fb2rE79d9UhOKZQLgzSqx%2Fuploads%2Fgit-blob-8ec3e877b1397045c61d394485e72ac4d93120ee%2Fc6ddb46c637059f06e86c790a911217a9428f5c47b5efef046f90555e85b03cd.svg?alt=media) **更多** → **跟踪集成**.
4. 在 *回传* 部分中，选择 ![](https://1152657667-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2Fb2rE79d9UhOKZQLgzSqx%2Fuploads%2Fgit-blob-df93ac0f80fc5cece7983980a5ce3fbcf19aabce%2F3ef9d737089bc07dbb7e4fd41a97edfbaec261e4f55ab3a1666f3daf957f69c3.svg?alt=media) **\[下拉箭头] 操作**，然后选择 **启动测试**.
5. 确认回传的 URL 正确，然后选择 **开始测试**.

</details>

<details>

<summary>创建测试转化</summary>

此测试不会在 impact.com 网页应用中执行。相反，您将执行一个遵循典型用户旅程的端到端测试。请确保您已通知合作品牌您将进行此测试。

1. 在顶部导航栏中，选择 **内容 → 资源**.
2. 选择一个广告。
3. 在广告名称下，选择 **获取跟踪链接**.
4. 选择 ![](https://1152657667-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2Fb2rE79d9UhOKZQLgzSqx%2Fuploads%2Fgit-blob-d0b6669ae76a7bef06a8d6940d7ad5c16bb8d018%2F7cb018d4face8d7cceb880eb5086c812e764fbcfe6f2a0377f88bc7576973070.svg?alt=media) **\[开启切换]** **跟踪参数**.
5. 输入 **Sub IDs** 或一个 **Shared ID** ，如有需要。每个字段至少需要输入一个值。
   * 如果这些字段中已经有值，请跳过此步骤。
6. 可选地，从下拉列表中选择一个 **属性** 。
7. 选择 **保存**.
8. 选择 **复制跟踪链接**.
9. **将** 该链接粘贴到一个新的浏览器窗口中。
10. 完成该动作。
11. 大约 15 分钟后，在您的系统中检查由该测试动作生成的回传。
    * 15 分钟通常是动作处理所需的时间。
    * 您还可以在 [待处理动作](https://app.impact.com/secure/mediapartner/actionworkflows/mp-pending-actions-flow.ihtml) 界面中看到这个新的待处理动作。如果您在 *待处理动作* 界面中看到了该动作，但尚未收到回传，请再次检查您的回传设置。
12. 请让您的品牌方撤销该动作。
13. 检查您的系统中由此撤销生成的回传。
    * 如果您在 [已撤销动作](https://app.impact.com/secure/mediapartner/MP_Performance_Report/action-workflows/mp-reversed-actions-flow.ihtml) 界面中看到了被撤销的动作，但尚未收到回传，请再次检查您的回传设置。

</details>

<details>

<summary>排查错误</summary>

| 错误       | 描述                                                                                   |
| -------- | ------------------------------------------------------------------------------------ |
| 缺少必填参数   | 您的服务器可能期望接收一个值，而不是一个变量。请修改您的回传 URL，传递一个测试值（例如“12345678”而不是 `{SubId1}`），并查看它是否接受硬编码值。 |
| 区分大小写的变量 | 动态变量区分大小写，必须完全一致，这意味着 `{SubId1}` 与 `{subid1}`并不相同。请再次检查您的变量是否体现了正确的大小写敏感性。           |
| 拒绝访问     | 大多数回传服务器都有一个必须与动态变量一起传递的安全令牌或值。请与您网站的技术团队合作（或参考您网站提供商的文档），了解访问服务器所需的令牌或安全值。          |

</details>

{% hint style="success" icon="circle-info" %}
**注意：** 如果您无法发现回传设置中的任何问题，但仍然没有收到回传， [联系支持](https://app.impact.com/support/portal.ihtml)。impact.com 可以检查是否已生成回传、每个回传的响应代码是什么，以及每个回传的正文内容。这些信息可能有助于您调试设置。
{% endhint %}
