shop.product.search
Возвращает список товаров, соответствующих заданным критериям.
Параметры
-
hash
GET
Необязательно
Строка с хешем для описания условий поиска товаров, закодированная для передачи в URL.
— 'id/12,23,34' — список ID нужных товаров.
— 'related/cross_selling/12' — товары, выбранные в качестве перекрёстных продаж для товара с id = 12.
— 'related/upselling/12' — товары, выбранные в качестве схожих и альтернативных для товара с id = 12.
— 'category/27' — товары, содержащиеся в категории с id = 27.
— 'search/query=style' — полнотекстовый поиск по слову 'style'.
— 'search/name=style' — точный поиск слов в поле 'name' таблицы 'shop_product'. Вместо оператора сравнения '=' можно использовать другие, поддерживаемые SQL: '>', '<', '>=', '<=', '!='. Вместо названий полей таблицы 'shop_product' можно также использовать обозначение 'tag' — для аналогичного поиска по тегам товаров. Можно выполнять поиск сразу по нескольким полям: 'search/name*=style&tag=fashion'.
— 'search/name*=style' — поиск по частям слов в поле 'name' таблицы 'shop_product'; поддерживаемые операторы: '*=' (поиск в любой части слов), '^=' (поиск в начале слов), '$=' (поиск в конце слов).
— 'search/tag=style' или 'tag/style' — точный поиск по тегу 'style'; формат 'search/tag=style' можно использовать для поиска по нескольким тегам с условием '||' (ИЛИ): 'search/tag=style||fashion'.
— 'search/type_id=1' — пример поиска по любому полю в таблице 'shop_product'.
— 'search/color.value_id=4,5,6' — поиск товаров с указанными ID значений характеристики с указаным текстовым идентификатором (в этом примере — 'color').
— 'search/sku_id=11,22,33' — поиск по списку ID модификаций товаров; чтобы получить в найденных товарах только модификации с указанными здесь ID, добавьте поле 'skus_filtered' в список полей в параметре 'fields'.
— 'search/category_id=7,8,9' — поиск товаров, для которых в качестве основной выбраны категории с указаннымми id.
— 'type/1' — поиск по ID типа товаров, синоним 'search/type_id=1'.
— 'bestsellers/2592000' — поиск товаров-бестселлеров за указанное количество секунд (в данном примере за 30 дней = 60*60*24*30).
— 'bestsellers' — поиск товаров-бестселлеров за всё время продаж. -
offset
GET
Необязательно
Номер начальной позиции в списке найденных товаров, начиная с которой нужно начинать формировать результат поиска. Допускается указание неотрицательных значений. Если не указано, то используется значение по умолчанию 0 (начинать с первого найденного элемента).
-
limit
GET
Необязательно
Максимальное количество товаров, которые необходимо получить. Допустимый диапазон значений: от 0 до 1000. Если не указано, используется значение по умолчанию 100.
-
fields
GET
Необязательно
Список полей со свойствами товаров, которые нужно получить. Может содержать либо только список всех полей таблицы 'shop_product', обозначенный с помощью синтаксиса '*', либо также названия дополнительных полей, перечисленных ниже, которые можно добавить через запятую, например: '*,skus,stock_counts'.
Список доступных дополнительных полей:
- images: в содержимое ответа добавляются элементы с ключом 'images' с подробной информацией обо всех изображениях товара включая 3 URL эскизов — с размерами '970', '96x96' и '270x0';
- images2x: аналогично полю 'images', но в информации об изображениях содержатся URL эскизов в для устройств с двойной плотностью пикселей;
- image: в содержимое ответа добавляются элементы с ключом 'image' с 3 URL эскизов основного изображения товара — с размерами '970', '96x96' и '270x0';
- image_crop_small: в содержимое ответа добавляются элементы с ключом 'image_crop_small' с URL эскиза основного изображения товара с размером '48x48';
- image_count: в содержимое ответа добавляются элементы с ключом 'image_count' с количеством изображений товара;
- skus: в содержимое ответа добавляются элементы с ключом 'skus' с подробной информацией о модификациях товара; если запрошено также поле 'stock_counts', то в свойствах каждой модификации доступен элемент с ключом 'stock' с информацией об остатках модификации товара на каждом складе; если запрошено также поле 'skus_image', то в свойствах каждой модификации доступны элементы с ключами 'ext', 'image_filename', 'image_description' с информацией об изображении товара, отображающемся на витрине при выборе данной модификации;
- skus_filtered: аналогично полю 'sku', но в элементе 'skus' содержатся только те модификации, свойства которых соответствуют условиям фильтрации товаров;
- sku_filtered: аналогично полю 'skus_filtered', но в элементе 'skus' содержится только одна модификация товара, свойства которого соответствуют условиям фильтрации товаров;
- sku: в содержимое ответа добавляются элементы с ключом 'sku' с наименованием основной модификации товара;
- frontend_url: в содержимое ответа добавляются элементы с ключом 'frontend_url' с URL страницы товара относительно URL витрины;
- sales_30days: в содержимое ответа добавляются элементы с ключами 'sales_30days' — с суммарной стоимостью всех модификаций товара в оплаченных заказах в виде числа, соответствующего основной валюте магазина и 'sales_30days_html' — с аналогичным значением, но с обозначением основной валюты магазина, подготовленным для использования в HTML-коде;
- stock_worth: в содержимое ответа добавляются элементы с ключами 'stock_worth' — с суммарной стоимостью всех модификаций товара, доступных на складе, в виде числа, соответствующего основной валюте магазина, и 'stock_worth_html' — с аналогичным значением, но с обозначением основной валюты магазина, подготовленным для использования в HTML-коде. -
filters
GET
Необязательно
Закодированный для использования в URL массив параметров дополнительной фильтрации товаров со следующими ключами:
- in_stock_only: (int) 1, если нужно получить только товары с положительными или бесконечными остатками на складе.
- out_of_stock_only: (int) 1, если нужно получить только товары с нулевым остатком на складе (не null и меньше 1).
- price_min: (float) Минимальная цена, выраженная в основной валюте магазина, не ниже которой должна быть цена требуемых товаров.
- price_max: (float) Максимальная цена, выраженная в основной валюте магазина, не выше которой должна быть цена требуемых товаров.
- unit: (int) ID складской или базовой единицы измерения количества, которая должна быть у требуемых товаров.
- stock_unit_id: (int) ID складской единицы измерения количества, которая должна быть у требуемых товаров.
- base_unit_id: (int) ID базовой единицы измерения количества, которая должна быть у требуемых товаров.
- строковый идентификатор характеристики: (array) Массив информации о значениях характеристики с указанным идентификатором, которые должны быть указаны в свойствах товаров. Каждый элемент массива может представлять собой либо массив числовых ID значений характеристики, либо массив с ключами 'min' (минимальное значение), 'max' (максимальное значение), 'unit' (строковый идентификатор единицы измерения характеристики из файла dimension.php). -
escape
GET
Необязательно
Флаг (0 или 1), обозначающий необходимость экранировать свойства полученных товаров 'name' и 'url' для использования в HTML-коде. По умолчанию применяется значение 1.
-
access_token
GET
Токен авторизации, полученный при подключении к API.
-
format
GET
Необязательно
Устанавливает формат ответа. Возможные значения:
json
(по умолчанию),xml
.
Массив значений о найденных товарах со следующими ключами:
- count int Количество найденных товаров.
- offset int Значение параметра
'offset'
. - limit int Значение параметра
'limit'
. - products array Список найденных товаров. Подмассив со свойствами каждого товара содержит значения со следующими ключами:
- products[]['id'] int ID товара.
- products[]['name'] string Наименование.
- products[]['summary'] string Краткое описание.
- products[]['meta_title'] string Значение элемента TITLE страницы товара.
- products[]['meta_keywords'] string Значение метатега keywords.
- products[]['meta_description'] string Значение метатега description.
- products[]['description'] string Полное описание.
- products[]['contact_id'] int ID контакта пользователя, добавившего товар.
- products[]['create_datetime'] datetime Дата и время создания товара.
- products[]['edit_datetime'] datetime Дата и время последнего обновления товара.
- products[]['status'] int Обозначение статуса товара: -1 (снят с публикации), 0 (скрыт), 1 (опубликован).
- products[]['type_id'] int ID типа товара.
- products[]['image_id'] int ID основного изображения.
- products[]['image_url'] string URL эскиза основного изображения товара с размером '200x0', если у товара есть изображения.
- products[]['video_url'] string Ссылка на видеоролик.
- products[]['sku_id'] int ID основной модификации.
- products[]['url'] int Редактируемая часть URL страницы товара на витрине.
- products[]['rating'] float Рейтинг товара по результатам его оценки покупателями.
- products[]['price'] float Цена в формате
decimal(15,4)
. - products[]['compare_price'] float Зачёркнутая цена в формате
decimal(15,4)
. - products[]['currency'] string Обозначение валюты товара в формате ISO 4217.
- products[]['min_price'] float Минимальная цена модификации в формате
decimal(15,4)
. - products[]['max_price'] float Максимальная цена модификации в формате
decimal(15,4)
. - products[]['tax_id'] int ID выбранного налогового правила или 0, если правило не выбрано.
- products[]['count'] float|null Общее количество на складе всех модификаций. Значение
null
означает, что для некоторых модификаций товара указано бесконечное количество на складе. - products[]['count_denominator'] int Доступная точность указания складских остатков товара. Возможные значения: 1 (целые штуки), 10 (точность до десятых), 100 (точность до сотых), 1000 (точность до тысячных).
- products[]['order_multiplicity_factor'] float Шаг (кратность) добавления в корзину в формате
decimal(15,3)
. - products[]['stock_unit_id'] int ID выбранной складской единицы измерения количества.
- products[]['base_unit_id'] int ID выбранной базовой единицы измерения количества.
- products[]['stock_base_ratio'] float Соотношение между складской и базовой единицами измерения количества.
- products[]['order_count_min'] float Минимальное количество товара в заказе в формате
decimal(15,3)
. - products[]['order_count_step'] float Значение изменения количества кнопками «+/-» в формате
decimal(15,3)
. - products[]['cross_selling'] int Режим отображения сопутствующих товаров: 0 (выключено), 1 (включено показывать в соответствии с настройками типа товаров), 2 (включено показывать выбранные вручную рекомендуемые товары).
- products[]['upselling'] int Режим отображения схожих и альтернативных товаров: 0 (выключено), 1 (включено показывать в соответствии с настройками типа товаров), 2 (включено показывать выбранные вручную рекомендуемые товары).
- products[]['rating_count'] int Количество отзывов о товаре.
- products[]['total_sales'] float Общая сумма продаж товара, выраженная в основной валюте магазина, в формате
decimal(15,4)
. - products[]['total_sales_html'] string Общая сумма продаж с обозначением валюты товара, подготовленная для использования в HTML-коде.
- products[]['category_id'] int ID основной категории.
- products[]['badge'] string Обозначение одной из стандартных наклеек либо HTML собственной наклейки для изображений.
- products[]['sku_type'] int Тип выбора модификаций товара на витрине: 0 (по наименованиям артикулов), 1 (по значениям характеристик).
- products[]['sku_count'] int Количество модификаций.
- products[]['skus'] array Массив информации о модификациях товара. Присутствует в ответе, если в параметре
fields
указано одно из значений skus, skus_filtered, sku_filtered. Ключи массива — ID модификаций. Подмассив каждой модификации содержит значения со следующими ключами:- products[]['skus'][]['id'] int ID модификации.
- products[]['skus'][]['product_id'] int ID товара, к которому относится модификация.
- products[]['skus'][]['sku'] int Код артикула.
- products[]['skus'][]['sort'] int Значение сортировки.
- products[]['skus'][]['name'] string Наименование артикула.
- products[]['skus'][]['image_id'] int ID изображения, выбранного в свойствах модификации.
- products[]['skus'][]['price'] float Цена в формате
decimal(15,4)
. - products[]['skus'][]['purchase_price'] float Закупочная цена в формате
decimal(15,4)
. - products[]['skus'][]['compare_price'] float Зачёркнутая цена в формате
decimal(15,4)
. - products[]['skus'][]['count'] float|null Общее количество на складе в формате
decimal(15,3)
илиnull
, если количество бесконечное. - products[]['skus'][]['available'] int Флаг (0 или 1), означающий доступность модификации для заказа.
- products[]['skus'][]['stock_base_ratio'] float Соотношение между складской и базовой единицами измерения количества.
- products[]['skus'][]['order_count_min'] float Минимальное количество модификации в заказе в формате
decimal(15,3)
. - products[]['skus'][]['order_count_step'] float Значение изменения количества кнопками «+/-» в формате
decimal(15,3)
. - products[]['skus'][]['status'] int Видимость модификации на витрине.
- products[]['skus'][]['file_name'] string Имя прикреплённого файла.
- products[]['skus'][]['file_size'] int Размер прикреплённого файла в байтах.
- products[]['skus'][]['file_description'] string Описание прикреплённого файла.
- products[]['skus'][]['stock'] array Массив с информацией об остатках на отдельных складах. Присутствует в ответе, если в параметре fields указано значение stock_counts. Ключи массива — ID складов, значения — остатки модификации товара в формате
decimal(15,3)
.
- products[]['images'] array Массив с информацией об изображениях товара. Присутствует в ответе, если в параметре fields указано значение images. Ключи массива — ID изображений. Подмассив каждого изображения содержит значения со следующими ключами:
- products[]['images'][]['id'] int ID изображения.
- products[]['images'][]['product_id'] int ID товара, к которому относится изображение.
- products[]['images'][]['upload_datetime'] datetime Дата и время загрузки в свойства товара.
- products[]['images'][]['description'] string Описание.
- products[]['images'][]['sort'] int Значение сортировки начиная с 0.
- products[]['images'][]['width'] int Ширина в пикселях.
- products[]['images'][]['height'] int Высота в пикселях.
- products[]['images'][]['size'] int Размер файла в байтах.
- products[]['images'][]['original_filename'] string Оригинальное имя загруженного файла.
- products[]['images'][]['ext'] string Расширение имени файла.
- products[]['images'][]['url_thumb'] string URL эскиза изображения с размером '200x0'.
- products[]['images'][]['url_crop'] string URL эскиза изображения с размером '96x96'.
- products[]['images'][]['url_big'] string URL эскиза изображения с размером '970'.