getProductsByIds
Получение нескольких продуктов по их идентификаторам
Products.getProductsByIds(ids, langCode, userQuery)
const value = await Products.getProductsByIds('1, 5, 8', 'en_US')
Схема
ids:* строка
Идентификаторы страниц продуктов, для которых необходимо найти связи
пример: 1,3,5,15
langCode: строка
Параметр кода языка. По умолчанию "en_US"
пример: en_US
userQuery: IProductsQuery
Необязательный набор параметров запроса
пример: []
userQuery.offset: число
Необязательный параметр для пагинации, по умолчанию 0
пример: 0
userQuery.limit: число
Необязательный параметр для пагинации, по умолчанию 30
пример: 30
userQuery.sortOrder: строка
Необязательный порядок сортировки DESC | ASC
пример: DESC
userQuery.sortKey: строка
Необязательное поле для сортировки (id, title, date, price, position, status)
пример: id
Этот метод извлекает объекты продуктов на основе их идентификаторов (ids) из API. Он возвращает Promise, который разрешается в объекты IProductsEntity для продукта.
Пример возвращаемого значения:
[
{
"id": 1764,
"localizeInfos": {
"en_US": {
"title": "Product"
}
},
"isVisible": true,
"isSync": true,
"price": 0,
"additional": {
"prices": {
"min": 0,
"max": 100
}
},
"blocks": [
null
],
"sku": "0-123",
"productPages": [
{
"id": 8997,
"pageId": 1176,
"productId": 8872
}
],
"statusLocalizeInfos": {
"en_US": {
"title": "Product"
}
},
"templateIdentifier": "my-template",
"shortDescTemplateIdentifier": "my-template-short",
"attributeValues": {
"en_US": {
"marker": {
"value": "",
"type": "string",
"position": 1,
"isProductPreview": false,
"isIcon": false,
"attributeFields": {
"marker": {
"type": "string",
"value": "test"
}
}
}
}
},
"attributeSetIdentifier": "my-set",
"statusIdentifier": "my-status",
"position": 1
}
]
Схема
id: число
идентификатор объекта
пример: 1764
localizeInfos: Record<string, any>
json-описание основного объекта данных страницы с учетом языка "en_US" (например)
пример:
{
"en_US": {
"title": "Catalog",
"plainContent": "Content for catalog",
"htmlContent": "<b>Content for catalog</b>",
"menuTitle": "Catalog"
}
}
isVisible: логическое
Флаг видимости страницы
пример: true
isSync: логическое
индикатор индексации страницы (true или false)
пример: false
price: число
значение цены страницы продукта, взятое из индекса
пример: 0
additional: Record<string, any>
дополнительное значение из индекса
пример:
{
"prices": {
"min": 0,
"max": 100
}
}
blocks: массив
блоки продукта
пример:
["product_block"]
sku: строка
значение SKU продукта, взятое из индекса
пример: 1
productPages: массив
Объекты ProductPageEntity, связанные со страницей продукта (необязательно)
пример:
[
{
"id": 8997,
"pageId": 1176,
"productId": 8872
}
]
statusLocalizeInfos: CommonLocalizeInfos
json-описание объекта статуса элемента с учетом языка
пример:
{ "title": "Product" }
templateIdentifier: строка
пользовательский идентификатор связанного шаблона
пример: my-template
shortDescTemplateIdentifier строка
пользовательский идентификатор связанного шаблона для краткого описания
пример: my-template-short
attributeValues: Record<string, string>
Массив значений атрибутов из индекса (представленный в виде пары пользовательский идентификатор атрибута: значение атрибута)
пример:
{
"en_US": {
"marker": {
"value": "",
"type": "string"
}
}
}
attributeSetIdentifier: строка
текстовый идентификатор используемого набора атрибутов
пример: 'my-set'
statusIdentifier: строка
текстовый идентификатор статуса продукта
пример: 'my-status'
position: число
номер позиции (для сортировки)
пример: 1