getProductsByIds
Obtendo múltiplos produtos pelos seus ids
Products.getProductsByIds(ids, langCode, userQuery)
const value = await Products.getProductsByIds('1, 5, 8', 'en_US')
Esquema
ids:* string
Identificadores da página do produto para os quais encontrar relacionamentos
exemplo: 1,3,5,15
langCode: string
Códigos de idioma. Padrão "en_US"
exemplo: en_US
userQuery: IProductsQuery
Conjunto opcional de parâmetros de consulta
exemplo: []
userQuery.offset: number
Parâmetro opcional para paginação, padrão é 0
exemplo: 0
userQuery.limit: number
Parâmetro opcional para paginação, padrão é 30
exemplo: 30
userQuery.sortOrder: string
Ordem de classificação opcional DESC | ASC
exemplo: DESC
userQuery.sortKey: string
Campo opcional para ordenar (id, título, data, preço, posição, status)
exemplo: id
Este método recupera objetos de produtos com base em seus identificadores (ids) da API. Ele retorna uma Promise que se resolve em objetos IProductsEntity para o produto.
Exemplo de retorno:
[
{
"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
}
]
Esquema
id: number
identificador do objeto
exemplo: 1764
localizeInfos: Record<string, any>
descrição json do objeto de dados da página principal levando em conta o idioma "en_US" (por exemplo)
exemplo:
{
"en_US": {
"title": "Catalog",
"plainContent": "Conteúdo para o catálogo",
"htmlContent": "<b>Conteúdo para o catálogo</b>",
"menuTitle": "Catálogo"
}
}
isVisible: boolean
flag de visibilidade da página
exemplo: true
isSync: boolean
indicador de indexação da página (true ou false)
exemplo: false
price: number
valor do preço da página do produto retirado do índice
exemplo: 0
additional: Record<string, any>
valor adicional do índice
exemplo:
{
"prices": {
"min": 0,
"max": 100
}
}
blocks: array
blocos de produto
exemplo:
["product_block"]
sku: string
valor SKU do produto retirado do índice
exemplo: 1
productPages: array
objetos ProductPageEntity vinculados à página do produto (opcional)
exemplo:
[
{
"id": 8997,
"pageId": 1176,
"productId": 8872
}
]
statusLocalizeInfos: CommonLocalizeInfos
descrição json do objeto de status do item, levando em conta o idioma
exemplo:
{ "title": "Product" }
templateIdentifier: string
identificador personalizado do template associado
exemplo: my-template
shortDescTemplateIdentifier string
identificador personalizado do template associado para descrição curta
exemplo: my-template-short
attributeValues: Record<string, string>
Array de valores de atributos do índice (apresentados como um par de identificador de atributo personalizado: valor do atributo)
exemplo:
{
"en_US": {
"marker": {
"value": "",
"type": "string"
}
}
}
attributeSetIdentifier: string
identificador textual do conjunto de atributos utilizado
exemplo: 'my-set'
statusIdentifier: string
identificador textual do status do produto
exemplo: 'my-status'
position: number
número da posição (para ordenação)
exemplo: 1