Доступ к подробным данным в панели администратора Shopify с помощью JSON

JSON (сокращение от JavaScript Object Notation) — это формат для хранения и передачи данных, часто используемый при отправке данных с серверов на веб-страницы. На большинстве страниц ресурсов в панели администратора Shopify, например на страницах «Заказы», «Товары» или «Клиенты», вы можете получить доступ к более подробным данным с помощью JSON.

Хотя для использования JSON не требуется выполнять сложные задачи разработки, доступ к JSON-файлу для определенного ресурса в панели администратора Shopify поможет вам собрать более подробную информацию или самостоятельно диагностировать и устранять проблемы. Например, вы можете просмотреть JSON-файл товара, чтобы найти его ID варианта, который может понадобиться для определенных задач по миграции данных или настройке кода темы. Также вы можете обратиться к JSON-файлу заказа, чтобы проверить переменную данных, которую хотите использовать при создании автоматизированного рабочего процесса в Shopify Flow.

JSON чаще всего используется разработчиками, но даже пользователи с ограниченными знаниями в области программирования могут извлечь пользу, научившись находить и интерпретировать основную информацию в формате JSON в панели администратора Shopify.

Переформатирование JSON-файла

Необработанные данные JSON отображаются в виде длинной последовательности вложенных переменных и скобок, что затрудняет их чтение человеком.

Чтобы сделать форматирование JSON более читабельным, воспользуйтесь одним из следующих вариантов:

  • Установите в браузере расширение для просмотра JSON.
  • Воспользуйтесь функцией «pretty-print», которая по умолчанию доступна в большинстве современных веб-браузеров:

Снимок экрана с JSON-файлом товара и примером информации о товаре. Флажок «pretty-print» активен и выделен в левом верхнем углу страницы.

Доступ к JSON-файлам в панели администратора Shopify

Панель администратора Shopify — это основной инструмент для управления всеми аспектами вашего бизнеса, и по умолчанию в ней отображается только самая полезная и актуальная информация. Дополнительная информация, которая собирается при выполнении действий в панели администратора, хранится в файлах .json на различных страницах ресурсов. Эти дополнительные сведения не отображаются по умолчанию, так как такой объем информации был бы избыточным и бесполезным, а также усложнил бы работу с панелью администратора.

Для большинства бизнес-задач вы можете использовать существующие инструменты Shopify для доступа к информации о вашем магазине и ее интерпретации. Однако при поиске причин или времени возникновения неполадок бывает полезно просмотреть конкретную информацию об определенных ресурсах, например о товарах или заказах.

Пример: доступ к JSON-файлу заказа

В этом примере вы получите доступ к JSON-файлу заказа в панели администратора Shopify.

Действия:

  1. В панели администратора Shopify перейдите в раздел «Заказы».

  2. Нажмите на любой заказ в списке «Заказы».

  3. В адресной строке браузера добавьте .json в конец URL-адреса. Он будет выглядеть примерно так:

https://admin.shopify.com/store/{example-shop-name}/orders/12345678901234.json
  1. Нажмите клавишу Enter, чтобы перезагрузить страницу в формате JSON.
  2. Необязательно: если у вас в браузере не установлено расширение для просмотра JSON, активируйте настройку «Pretty-print», чтобы сделать JSON-файл более удобным для чтения. Подробнее см. в разделе «Переформатирование JSON-файла».

Вы заметите, что отображается много ожидаемой информации о заказе, например связанные с ним "currency" и "line_items", но также включена и другая подробная информация, например "client_details" из сессии браузера клиента во время оформления заказа. Такая информация полезна для общего отслеживания сессий и аналитики маркетинговых платформ, но не является необходимой для обработки и выполнения заказа.

Отображение определенных полей в JSON-файле

Вы можете настроить отображение в JSON-файлах только определенных полей, что упростит интерпретацию информации, если вы знаете, какие именно свойства вам нужны. В конце URL-адреса любого JSON-файла в адресной строке браузера добавьте ?fields=, а затем перечислите через запятую имена свойств, которые вы хотите отобразить, в любом порядке.

Например, чтобы отобразить ИД заказа, информацию о клиенте, общую цену и теги, добавьте в конец URL-адреса JSON-файла ?fields=id,customer,total_price,tags, как в следующем примере:

https://admin.shopify.com/store/{example-shop-name}/orders/12345678901234.json?fields=id,customer,total_price,tags

Использование других ресурсов JSON

Вы можете использовать следующие ресурсы JSON для отображения определенной информации в панели администратора Shopify:

  • Количество товаров: добавьте /count.json в конец URL-адреса списка товаров, чтобы отобразить общее количество товаров. Полный URL-адрес должен выглядеть так:
https://admin.shopify.com/store/{example-shop-name}/products/count.json
  • Транзакции: добавьте /transactions.json в конец URL-адреса страницы заказа, чтобы отобразить только информацию о транзакциях заказа. Подробнее см. в документации по ресурсу Transactions.
  • Выполнения заказов: добавьте /fulfillments.json в конец URL-адреса страницы заказа, чтобы отобразить только информацию о выполнении заказа. Подробнее см. в документации по ресурсу Fulfillment.
  • Незавершённые оформления заказов: добавьте .json в конец URL-адреса незавершённого оформления заказа, чтобы отобразить подробную информацию о нём. Подробнее см. в документации по ресурсу Abandoned checkout.

Общие свойства JSON для поиска неисправностей

В следующей таблице перечислены свойства JSON, которые могут вам понадобиться для поиска неисправностей в различных типах ресурсов. Например, если вы хотите узнать, когда был опубликован определенный товар, вы можете просмотреть JSON-файл этого товара и найти свойство published_at, которое отображает дату и время в формате ISO 8601.

Эта таблица не включает все возможные ресурсы или свойства JSON, хранящиеся в панели администратора Shopify, поэтому для получения определений любых ресурсов или свойств, не включенных сюда, обратитесь к «Документации для разработчиков Shopify».

Список примеров ресурсов панели администратора и связанных с ними общих свойств, включая определения их возможного использования при поиске неисправностей.
РесурсСвойство JSONОпределение
Товар
"product": {
  "created_at"
Время и дата создания товара.
"product": {
  "published_at"
Время и дата, когда для товара был установлен статус «Активный».
"product": {
  "updated_at"
Время и дата последнего обновления товара. Сюда могут входить изменения описания товара, названия или информации для SEO, а также автоматические обновления, например изменение товарных запасов при покупке товара.
Вариант
"product": {
  "variants": [
    {
    "created_at"
Время и дата создания варианта. Эти значения могут отличаться от даты и времени создания товара в целом.
"product": {
  "variants": [
    {
    "updated_at"
Время и дата последнего обновления варианта. Эти значения могут отличаться от даты и времени последнего обновления товара в целом.
"product": {
  "variants": [
    {
    "inventory_quantity"
Текущее значение в базе данных и количество, доступное клиентам для покупки. Это значение может быть отрицательным, если товарные запасы варианта не отслеживаются или если разрешена продажа сверх запасов.
"product": {
  "variants": [
    {
    "old_inventory_quantity"
Значение в базе данных до последней даты updated_at для варианта.
Заказ
"order": {
   "line_items": [
    {
    "requires_shipping"
Отображается как true или false. Это значение указывает настройки доставки товара или варианта на момент размещения заказа.
"order": {
   "line_items": [
    {
    "taxable"
Отображается как true или false. Это значение указывает, как для товара или варианта был настроен сбор налогов на момент размещения заказа.
"order": {
   "line_items": [
    {
    "variant_inventory_management"
Отображается как shopify, amazon_marketplace_web, null или значение стороннего сервиса в зависимости от того, какая служба выполнения заказов отслеживает товарные запасы. Значение null означает, что запасы товара не отслеживались на момент заказа.
"order": {
   "line_items": [
    {
    "fulfillable_quantity"
Отображает, какое количество товарных запасов всё ещё зарезервировано системой для выполнения заказа. Это значение не равно текущим товарным запасам варианта.
"order": {
   "line_items": [
    {
    "quantity"
Количество купленных товаров или вариантов.
"order": {
   "line_items": [
    {
    "tax_lines"
В США здесь отображаются налоги штата, округа и муниципалитета. Если строки налогов не отображаются, но налог с заказа был взят, это означает, что налог был начислен на стоимость доставки.
Клиент
"customer": {
  "created_at"
Время и дата создания клиента.
"customer": {
  "updated_at"
Время и дата последнего обновления профиля клиента.

Метаполя в JSON

Метаполя — это гибкий способ добавления дополнительной пользовательской информации к ресурсу Shopify, например к товарам или коллекциям. Примеры данных, хранящихся с помощью метаполей, включают спецификации товаров, таблицы размеров, загружаемые документы, даты выпуска, изображения или номера деталей. Подробнее об использовании метаполей.

Вы можете добавить /metafields.json в конец URL-адреса страницы поддерживаемого ресурса, чтобы отобразить связанные с ним метаполя. В таблице ниже приведены примеры ресурсов и форматов URL, которые можно использовать для отображения информации о метаполях с помощью JSON.

Примеры ресурсов панели администратора и соответствующие URL-адреса JSON-файлов метаполей.
Пример типа ресурсаПример URL
Умная коллекцияhttps://admin.shopify.com/store/{your-store-name}/collections/{collection-id}/metafields.json
Клиентhttps://admin.shopify.com/store/{your-store-name}/customers/{customer-id}/metafields.json
Заказhttps://admin.shopify.com/store/{your-store-name}/orders/{order-id}/metafields.json
Страницаhttps://admin.shopify.com/store/{your-store-name}/pages/{page-id}/metafields.json
Товарhttps://admin.shopify.com/store/{your-store-name}/products/{product-id}/metafields.json
Вариантhttps://admin.shopify.com/store/{your-store-name}/products/{product-id}/variants/{variant-id}/metafields.json
Изображение товараhttps://admin.shopify.com/store/{your-store-name}/metafields.json?metafield[owner_id]={id}&metafield[owner_resource]=product_image

Примечание. Метаполя изображений товаров можно добавлять только через API. Замените {id} и другие заполнители в URL-адресе фактическими значениями из ваших запросов к API.


Магазинhttps://admin.shopify.com/store/{your-store-name}/metafields.json

Чтобы получить полный список ресурсов, которые могут иметь метаполя, и узнать о конкретных типах свойств, хранящихся для каждого типа ресурсов, обратитесь к описанию JSON-ресурса Metafield в документации для разработчиков Shopify.

События в JSON

События генерируются некоторыми ресурсами Shopify при выполнении определенных действий, таких как создание записи в блоге, выполнение заказа или добавление товара.

Вы можете добавить /events.json в конец URL-адреса страницы поддерживаемого ресурса, чтобы отобразить связанные с ним события. В таблице ниже приведены примеры ресурсов и форматов URL, которые можно использовать для отображения информации о событиях с помощью JSON.

Примеры ресурсов панели администратора и соответствующие URL-адреса JSON-файлов событий.
Пример типа ресурсаПример URL
Заказhttps://admin.shopify.com/store/{your-store-name}/orders/{order-id}/events.json

В этом файле указывается автор (author) событий, благодаря чему можно узнать, какие пользователи выполнили определенные действия, например кто или что опубликовал(о) товар.


Товарhttps://admin.shopify.com/store/{your-store-name}/products/{product-id}/events.json

В этом файле указывается автор (author) событий, благодаря чему можно узнать, какие пользователи выполнили определенные действия, например кто или что пометил(о) платеж как оплаченный.


Магазинhttps://admin.shopify.com/store/{your-store-name}/events.json?limit=250

Этот формат URL отображает 250 последних событий, произошедших в вашем магазине. События могут включать, но не ограничиваются этим: создание или обновление товаров, удаление страниц и обновление вариантов.


Чтобы получить полный список ресурсов, которые могут создавать события, и узнать о конкретных событиях, создаваемых для каждого типа ресурсов, обратитесь к описанию JSON-ресурса Event в документации для разработчиков Shopify.