Xem trước dữ liệu API được dùng trong Shopify Flow

Hầu hết các dòng công việc đều truy cập dữ liệu từ cửa hàng để bạn có thể sử dụng dữ liệu đó trong các điều kiện và thao tác. Shopify Flow truy cập dữ liệu cửa hàng bằng cách gọi GraphQL Admin API, cho phép bạn truy cập vào hầu hết mọi trường trong API.

Khi xây dựng dòng công việc, bạn sẽ thường thấy các tên trường và mô tả dựa trên API, nhưng bạn có thể cần biết giá trị của dữ liệu đó. Ví dụ: bạn có thể muốn biết tên ứng dụng của đơn hàng được tạo từ đơn hàng nháp. Ngoài ra, bạn có thể muốn đảm bảo rằng dòng công việc xuất ra dữ liệu theo mong muốn hoặc theo định dạng bạn cần.

Để xem lại giá trị dữ liệu, bạn có một số tùy chọn trong Shopify Flow.

Tìm trường trong bảng điều khiển quản trị Shopify

Trong hầu hết các trường hợp, bạn có thể tìm dữ liệu bằng cách xem trong bảng điều khiển quản trị Shopify. Ví dụ: product.title được liệt kê trên trang Sản phẩm.

Lấy dữ liệu mẫu

Khi xây dựng dòng công việc, bạn có thể lấy dữ liệu mẫu trực tiếp trong trình biên tập Flow. Vì dữ liệu của Flow đến từ các sự kiện nên để có dữ liệu mẫu chính xác, bạn phải bắt đầu bằng cách chọn một sự kiện phù hợp:

  1. Trong trình biên tập của Flow, mở thao tác bạn muốn sử dụng dữ liệu rồi nhấp vào Thêm biến. Ngoài ra, trong một điều kiện, hãy nhấp vào Thêm tiêu chí.
  2. Nhấp vào Định cấu hình dữ liệu mẫu.
  3. Flow hiển thị các sự kiện trước đó dựa trên yếu tố kích hoạt của dòng công việc. Nhấp vào Làm mới sự kiện để tìm nạp sự kiện từ các lần chạy gần đây, hoặc nhấp vào Bắt đầu theo dõi sự kiện trực tiếp rồi kích hoạt thủ công sự kiện trong Bảng điều khiển quản trị hay ứng dụng liên quan (đối với yếu tố kích hoạt dựa trên ứng dụng).
  4. Sau khi sự kiện diễn ra, Flow sẽ hiển thị chi tiết về sự kiện. Chọn sự kiện bạn muốn dùng để lấy dữ liệu mẫu. Nhấp vào Sử dụng sự kiện kích hoạt này.
  5. Giờ đây, khi bạn duyệt xem các sự kiện, dữ liệu mẫu sẽ hiển thị cho từng biến.

Giới hạn:

  • Do giới hạn về không gian nên đối với dữ liệu trong danh sách, Flow sẽ chỉ hiển thị dữ liệu từ mục đầu tiên trong danh sách.
  • Flow sẽ lưu trữ tối đa 5 sự kiện cùng lúc cho mỗi dòng công việc.
  • Flow không thể tìm nạp sự kiện từ các lần chạy gần đây cho một số yếu tố kích hoạt, chẳng hạn như Thời gian đã lên lịch, Đã tạo mục nhập siêu đối tượng, Khách hàng đã tham gia phân khúc hoặc Khách hàng đã rời khỏi phân khúc.

Sử dụng trường trong dòng công việc đang hoạt động

Bạn có thể sử dụng an toàn các trường trong dòng công việc bằng cách áp dụng thao tác Ghi nhật ký đầu ra. Khi chạy dòng công việc, thao tác Ghi nhật ký đầu ra sẽ in đầu ra của bất kỳ biến và văn bản nào sang trang Lịch sử chạy. Bạn cũng có thể dùng các thao tác thông báo, chẳng hạn như Gửi email nội bộ.

Các bước sử dụng tính năng Ghi nhật ký đầu ra:

  1. Chọn một yếu tố kích hoạt có thể kích hoạt thủ công.
  2. Thêm thao tác Ghi nhật ký đầu ra vào dòng công việc và kết nối với yếu tố kích hoạt.
  3. Trong phần cấu hình Ghi nhật ký đầu ra, nhấp vào Thêm biến để thêm các biến bạn muốn kiểm tra vào mục Đầu ra.
  4. Khi hoàn tất, hãy nhấp vào Bật dòng công việc.
  5. Kích hoạt dòng công việc bằng cách chạy thủ công hoặc làm cho yếu tố kích hoạt khởi chạy. Ví dụ: nếu sử dụng yếu tố kích hoạt Đã tạo đơn hàng, hãy tạo một đơn hàng đặt thử.
  6. Sau khi dòng công việc chạy, hãy kiểm tra các biến trong nhật ký hoạt động.

Tham khảo trang JSON của tài nguyên

Hầu hết các trang tài nguyên trong bảng điều khiển quản trị Shopify, chẳng hạn như trang Đơn hàng, Sản phẩm hoặc Khách hàng đều cho phép xem dữ liệu cung cấp cho trang đó. Dữ liệu này không hoàn toàn giống cách đặt tên và định dạng mà Shopify Flow sử dụng, nhưng các giá trị khớp với dữ liệu trong GraphQL Admin API. Để xem dữ liệu, hãy thêm .json vào URL.

Ví dụ: đi tới trang Đơn hàng trong bảng điều khiển quản trị Shopify và nhấp vào một đơn hàng để điều hướng. Trên thanh địa chỉ của trình duyệt, hãy thay đổi địa chỉ của trang từ:

https://https://admin.shopify.com/store/<shopname>/orders/3804849891234

Thành định dạng sau:

https://https://admin.shopify.com/store/<shopname>/orders/3804849891234.json

Sử dụng GraphiQL hoặc công cụ API của bên thứ ba

Bạn có thể trực tiếp truy vấn API bằng công cụ API của bên thứ ba như Postman, hoặc công cụ miễn phí GraphiQL do Shopify cung cấp. Tùy chọn này cho kết quả chính xác nhất nhưng yêu cầu phải am hiểu nhất định về cách tạo truy vấn GraphQL.

Đối với GraphiQL, Shopify cung cấp cả trình khám phá GraphiQL trên nền tảng web có dữ liệu chung và ứng dụng GraphiQL. Với GraphiQL, bạn có thể tạo truy vấn GraphQL khớp chính xác với tên trường trong Shopify Flow. Nếu sử dụng ứng dụng, các giá trị cũng sẽ khớp hoàn toàn với cửa hàng của bạn.

Bằng cách sử dụng công cụ này, bạn có thể xác định chính xác dữ liệu mà Shopify Flow sử dụng thông qua dữ liệu cửa hàng thực. Ví dụ: bạn tạo truy vấn sau:

{
  orders(first:5, reverse:true) {
    nodes {
      createdAt
      app {
        name
      }
      channelInformation {
        app {
          title
        }
      }
    }
  }
}

Trong các kết quả sau, biến order / app / name hiển thị tên ứng dụng của đơn hàng. Trong trường hợp này, đơn hàng được tạo từ ứng dụng đơn hàng nháp, vì vậy giá trị là Draft Orders. Thông tin kênh chỉ dùng được cho ứng dụng Point of Sale.

{
  "data": {
    "orders": {
      "nodes": [
        {
          "createdAt": "2023-04-10T12:32:41Z",
          "app": {
            "name": "Draft Orders"
          },
          "channelInformation": null
        },
        {
          "createdAt": "2023-04-10T12:29:12Z",
          "app": {
            "name": "Draft Orders"
          },
          "channelInformation": null
        },
        {
          "createdAt": "2023-03-17T20:23:10Z",
          "app": {
            "name": "Draft Orders"
          },
          "channelInformation": null
        },
        {
          "createdAt": "2023-03-17T20:20:53Z",
          "app": {
            "name": "Draft Orders"
          },
          "channelInformation": null
        },
        {
          "createdAt": "2023-03-17T15:45:15Z",
          "app": {
            "name": "Point of Sale"
          },
          "channelInformation": {
            "app": {
              "title": "Point of Sale"
            }
          }
        }
      ]
    }
  }