摘要
本指南說明 REST API 動作屬性在 Astra 中的運作方式,以及如何在 Astra 代理人中使用這些屬性。屬性就像佔位符,用於儲存和傳遞指令與動作之間的資料。
您將了解不同類型的屬性、它們的行為方式,以及在設定 REST API(具象狀態傳輸)動作時如何正確使用它們。
操作說明
什麼是屬性
在 Astra 中,屬性是儲存值的佔位符,讓代理人能夠在執行期間動態使用資料。
例如,像 名字 或 姓氏 這樣的屬性可以儲存客戶詳細資訊,並在回應或動作中重複使用。
重點
屬性就像代理人內部的變數
可在指令和動作中使用
在指令中,屬性主要用於釐清結構或格式化輸入與輸出
輸入與輸出屬性
Astra 中的屬性根據使用方式分類如下:
輸入屬性
為某個動作或步驟提供資料
範例:將客戶姓名傳入 API 請求
輸出屬性
儲存動作執行後回傳的結果
範例:儲存 API 回傳的回應 ID
兩種屬性都可在整個代理人工作流程中被引用。
A. 聯絡人屬性
聯絡人屬性是與客戶資料相關的特定屬性類型。
預定義的聯絡人屬性
常見範例包括:
名字姓氏
自訂聯絡人屬性
您可以根據使用案例在代理人內部建立自訂屬性。
重要事項
聯絡人屬性只有在資料實際擷取時才會接收數值。
它們會在下列情況被填入:
對話過程中提交了自訂表單
對話結束後觸發了 REST API 動作
其他注意事項
聯絡人屬性並不等同於聯絡人欄位
聯絡人欄位包括:
電子郵件電話
也可能來自:
自訂表單
潛在客戶資格條件
聯絡人屬性只有在資料經由這些流程擷取時,才會與這些欄位關聯。
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}}
無需定義資料輸入
可直接從使用者介面插入
C. 直接使用動作屬性
您可以引用動作的輸出:{{action.<action_id>#out#<attribute_name>}}
連結到前一個動作的輸出
可從使用者介面插入
無需手動輸入完整格式
最佳實務
大多數情況請使用資料輸入
除非確定聯絡人屬性已被填入,否則請避免依賴它們
使用輸出時,請確保動作執行順序正確
在部署前測試所有 API 動作
透過了解 Astra 屬性,您可以在 Wati 中建構更具結構性、更可靠且更動態的代理人。








