# 更新用户个人资料

**更新用户个人资料**元素会在用户在 Journey 中移动时为他们分配 Tag 值。您可以手动设置值，也可以从 Event 属性或 [**Webhook**](#use-a-value-from-a-webhook-response) 响应中提取值。

## 更新选项

### 手动更新

要在 Journey 中手动为用户分配 Tag 值：

* 在画布上您希望的任何位置添加**更新用户个人资料**元素。
* 按 **+ 手动值**，然后从下拉列表中选择一个 Tag，该列表包含您 Pushwoosh 账户中创建的所有 Tag。
* 根据所选 Tag 的类型为其指定值。

您可以一次性设置最多 10 个 Tag。

对于用户特定的 Tag，值会分配给具有相同 User ID 的所有用户设备。对于非用户特定的 Tag，值会分配给用户在 Journey 中使用的特定设备。

至于用例，有很多。例如，为达到特定 Journey 阶段的用户打上 Tag，在构建后续通信时非常方便。

<img src="/journey-elements-README-37.webp" alt="更新用户个人资料元素，显示客户 Journey 构建器中的手动标签分配选项。"/>

### 动态 Tag 值

动态更新意味着 Tag 值会自动从用户在到达**更新用户个人资料**元素之前触发的 Event 属性中获取。您可以更个性化地与这些用户沟通，并向他们发送量身定制的优惠。

<Aside type="note">
要了解有关 Event 及其属性的更多信息，请参阅 [Event 指南](/zh/product/audience-data-and-segmentation/events/)。
</Aside>

要从 Event 设置动态 Tag 值：

1. 将**更新用户个人资料**元素放置在画布上至少一个基于触发器的元素（**基于触发器进入**或**等待触发器**）之后。

<img src="/journey-elements-README-38.webp" alt="更新用户个人资料元素位于客户 Journey 流程中基于触发器的元素之后。"/>

2. 双击该元素，并在**动态 Tag 值**部分按 **+ 动态值**。
3. 选择要设置的 Tag。

<Aside type="caution">
如果您选择手动设置 Tag，它将不会出现在**动态 Tag 值**部分的 Tag 列表中。
</Aside>

4. 选择一个 Event 以及提供 Tag 值的属性。

<Aside type="caution">
确保 Tag 和 Event 属性类型匹配。例如，要设置 STRING 类型的 Tag，请使用 STRING 类型的 Event 属性。要了解有关 Tag 类型的更多信息，请参阅 [Tag 和过滤器指南](/zh/product/audience-data-and-segmentation/user-data-tags/tags#types-of-tags)。
</Aside>

<img src="/journey-elements-README-39.webp" alt="动态 Tag 值配置，显示事件选择和标签映射选项。"/>


#### 使用 Webhook 响应中的值

如果 Journey 前面的 [**Webhook**](/zh/product/customer-journey/journey-elements/channels/webhook/#map-webhook-response-data-to-variables) 元素配置了**响应映射**，它会以您设置的 Webhook 步骤名称（例如 `Create user in CRM`）出现在**Event**下拉菜单中，与常规 Event 并列。有关完整的 Journey 示例，请参阅[在您的 Journey 中使用 Webhook 响应数据](/zh/product/customer-journey/journey-elements/using-webhook-response-data-in-journeys/)。

1. 将**更新用户个人资料**放置在 **Webhook** 步骤之后。
2. 在**动态 Tag 值**中，按 **+ 动态值**。
3. 在 **Tag** 中，选择要更新的 Tag。
4. 在 **Event** 中，按您给定的名称选择 Webhook 步骤（例如 `Create user in CRM`）。
5. 在**动态值**中，选择映射的属性（例如 `subscription_status`）。

<img src="/journey-elements-update-user-profile-1.webp" alt="动态 Tag 值，其中 Tag、设置为 Webhook 步骤名称的 Event 以及来自响应映射的动态值" />

<Aside type="caution">
如果某个用户的 Webhook 映射值缺失（响应不是 JSON、**路径**未解析或 Webhook 调用失败），Pushwoosh 会跳过该 Tag 更新。Tag 会保留其先前的值或保持未设置状态，并且 Journey 会在此步骤继续而不会出错。这与 [**时间延迟**](/zh/product/customer-journey/journey-elements/flow-controls/time-delay/#use-a-date-from-a-webhook-response) 不同，后者在值缺失或不是有效日期时会以错误退出用户。在启动前运行 [**测试 Webhook**](/zh/product/customer-journey/journey-elements/channels/webhook/#test-the-webhook) 以确认您的映射。
</Aside>

<LinkCard title="在您的 Journey 中使用 Webhook 响应数据" href="/product/customer-journey/journey-elements/using-webhook-response-data-in-journeys/" />