跳转到主要内容

如何配置属性及REST Action API负载

摘要

本指南说明REST API操作属性在Astra中如何工作,以及它们在Astra代理中如何使用。属性作为占位符,用于存储和传递指令与操作之间的数据。

您将了解不同类型属性的行为,以及在配置REST API(表述性状态转移)操作时如何正确使用它们。

操作说明

什么是属性

在Astra中,属性是一个存储值的占位符。它使您的代理能够在执行过程中动态使用数据。

例如,像first namelast name这样的属性可以存储客户详细信息,并在响应或操作中重复使用。

关键点

  • 属性像变量一样在代理内部工作

  • 它们可以在指令和操作中使用

  • 在指令中,属性主要用于清晰化或结构化输入和输出

输入和输出属性

Astra中的属性根据其使用方式分类:

输入属性

  • 向操作或步骤提供数据

  • 示例:将客户名称传递到API请求中

输出属性

  • 存储操作返回的结果

  • 示例:保存来自API的响应ID

两种类型都可以在整个代理工作流中引用。

A. 联系人属性

联系人属性是与客户数据关联的一种特定属性类型。

预定义的联系人属性

常见示例包括:

  • first name

  • last name

自定义联系人属性

您可以在代理内根据您的用例创建自定义属性。

重要说明

  • 联系人属性仅在数据实际捕获时才会接收值。

它们在以下情况下被填充:

  • 在对话期间提交了自定义表单

  • 在对话后触发了REST API操作

其他要点

  • 联系人属性与联系人字段不同

  • 联系人字段包括:

    • email

    • phone

  • 它们也可以来自:

    • 自定义表单

    • 潜在客户资格标准

只有当数据通过这些流程捕获时,联系人属性才会与这些字段关联。

B. 操作属性

操作属性与代理中配置的操作相关联。

操作属性的类型

  • REST API 操作属性

  • 预定义的操作属性

1. 预定义操作属性

当您向代理添加特定操作时,这些属性变得可用。

示例:

  • Wati 发送销售摘要 → sales_summary_content(输入)

  • Slack 发送消息 → message_content(输入)

  • Google Sheets 添加行 → inserted_data_id(输出)

  • Google Sheets 更新行 → target_data_id(输入)

2. REST API 操作属性

  • 输入属性在您配置操作时创建

  • 输出属性在操作运行后(测试或实际执行期间)生成

重要说明

在使用其属性之前,必须先将相应的操作添加到您的代理中。

如何配置REST API操作负载

Astra中的REST API操作使用占位符来传递动态数据。

什么是占位符

占位符的写法为:{{placeholder_name}}

您可以在以下地方使用它们:

  • 查询参数

  • 头部

  • 请求体

推荐方法:使用数据输入

这是最灵活且推荐的方法。

A. 使用数据输入

步骤1:添加数据输入字段

在您的操作配置中创建一个数据输入。

步骤2:配置字段

定义:

  • 数据类型

  • 名称

  • 描述

  • 必填或可选

  • 参考属性(可选)

  • 默认值(可选)

步骤3:选择值的来源

您有3个选项:

  • 无参考

    • 代理根据上下文生成值

    • 添加清晰的描述,以便代理知道传递什么

  • 参考联系人属性

    • 仅在值已被捕获时使用

    • 除非以下情况,否则避免使用:

      • 已提交自定义表单,或

      • 发生了对话后API事件

  • 参考操作输出属性

    • 使用上一个操作的输出

    • 被引用的操作必须在当前操作之前运行

步骤4:使用占位符

在负载中引用它:{{data_input_name}}

确保名称完全匹配。

B. 使用直接联系人属性

您可以直接引用联系人属性:{{contact.attribute_name}}

  • 无需定义数据输入

  • 可以从UI直接插入

C. 使用直接操作属性

您可以引用操作的输出:{{action.<action_id>#out#<attribute_name>}}

  • 链接到上一个操作的输出

  • 可以从UI插入

  • 无需手动输入完整格式

最佳实践

  • 大多数用例使用数据输入

  • 除非确定联系人属性已被填充,否则避免依赖它们

  • 使用输出时确保操作执行顺序正确

  • 在部署前测试所有API操作

通过理解Astra属性,您可以在Wati内部构建更结构化、更可靠和更动态的代理。

这是否解答了您的问题?