Попередній перегляд даних API, які використовуються в Shopify Flow

Більшість робочих процесів отримують доступ до даних вашого магазину, щоб ви могли використовувати їх в умовах і діях. Shopify Flow отримує доступ до даних магазину шляхом виклику GraphQL Admin API, що дає вам доступ до майже всіх полів в API.

Під час створення робочого процесу ви часто стикатиметеся з назвами полів та їхніми описами на основі API, але вам може знадобитися дізнатися значення цих даних. Наприклад, ви можете захотіти дізнатися назву застосунку для замовлення, створеного з чернетки замовлення. Крім того, ви можете захотіти переконатися, що ваш робочий процес виводить очікувані дані або в очікуваному форматі.

Для перегляду значень даних у Shopify Flow є кілька варіантів.

Пошук поля в панелі адміністрування Shopify

У більшості випадків ви можете знайти дані в панелі адміністрування Shopify. Наприклад, product.title указано на сторінці товару.

Отримання зразка даних

Під час створення робочого процесу ви можете отримати зразок даних безпосередньо в редакторі Flow. Оскільки дані Flow надходять із подій, щоб отримати точний зразок даних, спершу потрібно вибрати відповідну подію:

  1. У редакторі Flow відкрийте дію, у якій ви хочете використати дані, і натисніть Додати змінну. Або в умові натисніть Додати критерії.
  2. Натисніть Налаштувати зразок даних.
  3. Flow відображає попередні події на основі тригера робочого процесу. Натисніть Оновити події, щоб отримати події з нещодавніх запусків, або натисніть Почати відстеження подій у реальному часі, а потім вручну активуйте подію в панелі адміністрування або відповідному застосунку (для тригерів на основі застосунків).
  4. Коли подія відбудеться, Flow відобразить відомості про неї. Виберіть подію, яку потрібно використати для отримання зразка даних. Натисніть Використати цю подію тригера.
  5. Тепер під час перегляду подій для кожної змінної має відображатися зразок даних.

Обмеження:

  • Через обмеження місця для даних у списку Flow відображатиме дані лише з першого елемента.
  • Flow зберігатиме до 5 подій одночасно для кожного робочого процесу.
  • Flow не може отримувати події з нещодавніх запусків для деяких тригерів, таких як «Запланований час», «Створено запис метаоб’єкта», «Клієнт приєднався до сегмента» або «Клієнт покинув сегмент».

Використання поля в активному робочому процесі

Ви можете безпечно використовувати поля в робочому процесі за допомогою дії Вивід у журнал. Коли ви запускаєте робочий процес, дія Вивід у журнал виводитиме результати будь-яких змінних і тексту на сторінку Історія запусків. Ви також можете використовувати дії сповіщень, такі як Надіслати внутрішній електронний лист.

Кроки для використання виводу в журнал:

  1. Виберіть тригер, який можна активувати вручну.
  2. Додайте дію Вивід у журнал до робочого процесу та з’єднайте її з тригером.
  3. У налаштуваннях дії Вивід у журнал натисніть Додати змінну, щоб додати змінні, які ви хочете перевірити, до розділу Вивід.
  4. Після завершення натисніть Увімкнути робочий процес.
  5. Активуйте робочий процес, запустивши його вручну або викликавши спрацьовування тригера. Наприклад, якщо ви використовуєте тригер Створено замовлення, створіть тестове замовлення.
  6. Після запуску робочого процесу перевірте журнал активності на наявність змінних.

Звернення до сторінки JSON ресурсу

Більшість сторінок ресурсів у панелі адміністрування Shopify, як-от сторінки Замовлення, Товар або Клієнт, дають змогу переглядати дані, що обслуговують сторінку. Ці дані не мають точно таких самих назв і формату, які використовує Shopify Flow, але їхні значення збігаються з тими, що є в GraphQL Admin API. Щоб переглянути дані, додайте .json до URL-адреси.

Наприклад, перейдіть до замовлення, відкривши в панелі адміністрування Shopify сторінку Замовлення та натиснувши замовлення. У адресі сторінки в адресному рядку браузера змініть адресу з:

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

На таку:

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

Використання GraphiQL або стороннього інструмента API

Ви можете безпосередньо надсилати запити до API за допомогою стороннього інструмента API, такого як Postman, або безкоштовного інструмента від Shopify — GraphiQL. Цей варіант забезпечує найточніші результати, але він вимагає певного знання створення запитів GraphQL.

Для GraphiQL Shopify пропонує як вебдослідник GraphiQL із загальними даними, так і застосунок GraphiQL. За допомогою GraphiQL ви можете створити запит GraphQL, який точно відповідає назвам полів у Shopify Flow. Якщо ви використовуєте застосунок, значення також точно відповідають даним вашого магазину.

За допомогою цього інструмента ви можете точно визначити, які дані використовує Shopify Flow, використовуючи реальні дані вашого магазину. Наприклад, ви створюєте такий запит:

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

У наведених нижче результатах змінна order / app / name відображає назву застосунку для замовлення. У цьому випадку замовлення було створено із застосунку чернеток замовлень, тому значення становить Draft Orders. Інформація про канал доступна лише для застосунку 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"
            }
          }
        }
      ]
    }
  }