取得顧客資料
在使用顧客資料的工作流程中,您可以使用取得顧客資料動作,從您的商店擷取顧客資訊。
設定
欄位
「取得顧客資料」動作包含下列欄位,用於建立查詢:
| 欄位 | 說明 |
|---|---|
| 資料排序依據 | 必填。用於排序查詢結果的參數。 |
| 結果數量上限 | 必填。您選取的搜尋查詢可傳回的結果上限。一次最多可傳回 100 筆。 |
| 查詢 | 必填。可從常用查詢中選擇,或選取 進階 自行建立。 |
查詢字串
以下範例會查詢在過去一天內有更新的顧客:
updated_at:<='{{ scheduledAt }}' AND updated_at:>'{{ scheduledAt | date_minus: "1 day" }}'變數 updated_at 是可用於 Customers query 的篩選器,可重複使用或與其他變數搭配使用。使用 Scheduled time trigger 的工作流程可以使用 Liquid 變數 scheduledAt。date_minus 這個 Liquid 標籤是 Flow 的特殊標籤,可用來從日期中扣除一段時間。
查詢資料時,下列資訊很有幫助:
- List of available customer filters
- 查詢必須遵循 特定語法
- 查詢欄位值不一定都有文件說明。有些情況下,您可以透過查閱 API docs 找到這些值。或者,您也常能在管理介面篩選時的網址中找到欄位值。舉例來說,若要找出部分訂單查詢的欄位值,請在管理介面的「訂單」頁面套用篩選,然後檢查網址。
- 您可以使用 Shopify GraphiQL app 在商店中執行或測試查詢。
- 請留意查詢失敗時的情況。API 通常會傳回所有結果(而非沒有結果)。
傳回的資料
所有 Get data 動作都會傳回包含 0 到 100 個資源的清單。根據您的使用情境,您可以用下列方式運用這些資料:
- 若需逐一處理清單中的每個項目,例如為每個項目新增標籤,可使用 For each 動作。
- 若需彙總資料,例如計算傳回了多少筆結果,可使用 Count 或 Sum 動作。
- 若需輸出清單,例如寄送包含所有項目的電子郵件,可在後續動作中直接使用傳回的資料。
若要在此動作後續的步驟中存取傳回的資料,請使用名為 Get customer data 的變數,該變數是一份顧客清單。您可以在條件與動作中使用這個變數。例如,您可以在 Send internal email 動作中這樣傳送訂單清單:
{% for single_customer in GetCustomerData %}
* {{ single_customer.name }}
{% endfor %}觸發條件
您可以在任何工作流程中使用此動作,包括 Scheduled time 觸發條件。在使用 Scheduled time 觸發條件的工作流程中,工作流程會在您指定的時間開始,而不是因事件而啟動。由於不是由商店或 app 的特定事件啟動,因此不會自動包含任何資料。
API 詳細資訊
範本
將顧客中繼欄位轉換為所有顧客的標籤
此工作流程會依據中繼欄位值,為所有顧客回填標籤。它每小時執行一次,並擷取最多 100 位未具有「processed」標籤的顧客。對於每位顧客,系統會查看 custom.test 中繼欄位的值,並將該值新增為標籤。此工作流程也會新增「processed」標籤,以免在下一次排程執行時被傳回。若要使用此工作流程,您需要將中繼欄位的命名空間與鍵調整為與您的商店相符。View template
刪除不活躍顧客
刪除建立時間超過 5 年且從未下過訂單的顧客。View template