getFrequentlyOrderedProducts
Obteniendo productos frecuentemente pedidos por marcador de bloque e id de producto.
Descripción
Este método devuelve productos frecuentemente pedidos asociados con un marcador de bloque específico y un id de producto. Devuelve una Promesa que se resuelve en un objeto IProductsResponse.
Blocks.getFrequentlyOrderedProducts(
productId*,
marker*,
langCode,
signPrice
);
Esquema de parámetros
Esquema
productId(requerido): número
Id del producto
ejemplo: 1
marker(requerido): cadena
Marcador de bloque
ejemplo: "frequently_ordered_block"
langCode: cadena
Código de idioma. Predeterminado: "en_US"
ejemplo: "en_US"
signPrice: cadena
Signo del precio
Ejemplos
Ejemplo mínimo
const response = await Blocks.getFrequentlyOrderedProducts(1, 'my-block');
Ejemplo con atributos
const response = await Blocks.getFrequentlyOrderedProducts(1, 'my-block', 'en_US');
Ejemplo de respuesta
{
"total": 15,
"items": [
{
"localizeInfos": {
"title": "Товар"
},
"paymentStages": [
{
"title": "Part A",
"marker": "part_a",
"value": 100
},
{
"title": "Part B",
"marker": "part_b",
"value": 200
}
],
"id": 1764,
"isVisible": true,
"isSync": true,
"price": 0,
"additional": {
"prices": {
"min": 0,
"max": 100
}
},
"blocks": [],
"sku": "0-123",
"productPages": [
{
"id": 8997,
"pageId": 1176,
"productId": 8872
}
],
"rating": {
"votes": 42,
"value": 4.5,
"like": 10,
"dislike": 2,
"method": "weighted"
},
"statusLocalizeInfos": {
"title": "Товар"
},
"templateIdentifier": "my-template",
"shortDescTemplateIdentifier": "my-template-short",
"attributeValues": {
"marker": {
"value": "",
"type": "string",
"position": 1,
"isProductPreview": false,
"isIcon": false,
"additionalFields": {
"marker": {
"type": "string",
"value": "test"
}
}
}
},
"attributeSetIdentifier": "my-set",
"statusIdentifier": "my-status",
"position": 1,
"signedPrice": "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9...",
"formModuleConfigs": [
{
"id": 1,
"formIdentifier": "reg",
"moduleIdentifier": "user",
"entityIdentifiers": [],
"isGlobal": true,
"isClosed": false,
"viewOnlyMyData": false,
"commentOnlyMyData": false,
"formDataCount": 0,
"entityFormDataCount": {},
"exceptionIds": [
"shop"
],
"nestedEntityIdentifiers": [
"avto-aksessuary",
"fm-moduliatory",
"avtomobilnye-derzhateli",
"videoregistratory-radiolokatory"
],
"ratingCalculation": "average",
"allowHalfRatings": true,
"maxRatingScale": 5,
"isAnonymous": true,
"allowRerating": true,
"isRating": true
}
],
"discountConfig": {
"discounts": [
{
"id": 5,
"identifier": "summer-sale",
"type": "DISCOUNT",
"localizeInfos": {
"title": "Summer Sale"
},
"startDate": "2026-01-01T06:32:19.736Z",
"endDate": "2026-01-28T06:32:22.632Z",
"discountValue": {
"value": 30,
"maxAmount": 0,
"discountType": "FIXED_PRICE",
"applicability": "TO_PRODUCT"
},
"exclusions": [
{
"id": 2
}
],
"position": 3,
"conditionLogic": "OR",
"gifts": [
{
"id": 3,
"localizeInfos": {
"title": "hhh222"
},
"attributeSetIdentifier": "attr-set-1",
"statusIdentifier": null,
"statusLocalizeInfos": {},
"templateIdentifier": null,
"price": 90,
"sku": null,
"attributeValues": {
"price1": {
"type": "integer",
"value": "90",
"isIcon": false,
"position": 0,
"additionalFields": [],
"isProductPreview": false
}
},
"isVisible": true
}
],
"conditions": [
{
"conditionType": "PRODUCT",
"entityIds": [
{
"id": 4,
"isNested": false
},
{
"isNested": false
}
],
"value": null
},
{
"conditionType": "ATTRIBUTE",
"entityIds": [
{
"isNested": false
}
],
"value": {
"value": "100",
"condition": "eq"
}
}
]
}
],
"discountPrice": 90,
"settings": {
"allowStacking": true,
"maxDiscountValue": 30,
"allowGiftStacking": false
}
}
},
{
"localizeInfos": {
"title": "Товар"
},
"paymentStages": [
{
"title": "Part A",
"marker": "part_a",
"value": 100
},
{
"title": "Part B",
"marker": "part_b",
"value": 200
}
],
"id": 1764,
"isVisible": true,
"isSync": true,
"price": 0,
"additional": {
"prices": {
"min": 0,
"max": 100
}
},
"blocks": [],
"sku": "0-123",
"productPages": [
{
"id": 8997,
"pageId": 1176,
"productId": 8872
}
],
"rating": {
"votes": 42,
"value": 4.5,
"like": 10,
"dislike": 2,
"method": "weighted"
},
"statusLocalizeInfos": {
"title": "Товар"
},
"templateIdentifier": "my-template",
"shortDescTemplateIdentifier": "my-template-short",
"attributeValues": {
"marker": {
"value": "",
"type": "string",
"position": 1,
"isProductPreview": false,
"isIcon": false,
"additionalFields": {
"marker": {
"type": "string",
"value": "test"
}
}
}
},
"attributeSetIdentifier": "my-set",
"statusIdentifier": "my-status",
"position": 1,
"signedPrice": "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9...",
"formModuleConfigs": [
{
"id": 1,
"formIdentifier": "reg",
"moduleIdentifier": "user",
"entityIdentifiers": [],
"isGlobal": true,
"isClosed": false,
"viewOnlyMyData": false,
"commentOnlyMyData": false,
"formDataCount": 0,
"entityFormDataCount": {},
"exceptionIds": [
"shop"
],
"nestedEntityIdentifiers": [
"avto-aksessuary",
"fm-moduliatory",
"avtomobilnye-derzhateli",
"videoregistratory-radiolokatory"
],
"ratingCalculation": "average",
"allowHalfRatings": true,
"maxRatingScale": 5,
"isAnonymous": true,
"allowRerating": true,
"isRating": true
}
],
"discountConfig": {
"discounts": [
{
"id": 5,
"identifier": "summer-sale",
"type": "DISCOUNT",
"localizeInfos": {
"title": "Summer Sale"
},
"startDate": "2026-01-01T06:32:19.736Z",
"endDate": "2026-01-28T06:32:22.632Z",
"discountValue": {
"value": 30,
"maxAmount": 0,
"discountType": "FIXED_PRICE",
"applicability": "TO_PRODUCT"
},
"exclusions": [
{
"id": 2
}
],
"position": 3,
"conditionLogic": "OR",
"gifts": [
{
"id": 3,
"localizeInfos": {
"title": "hhh222"
},
"attributeSetIdentifier": "attr-set-1",
"statusIdentifier": null,
"statusLocalizeInfos": {},
"templateIdentifier": null,
"price": 90,
"sku": null,
"attributeValues": {
"price1": {
"type": "integer",
"value": "90",
"isIcon": false,
"position": 0,
"additionalFields": [],
"isProductPreview": false
}
},
"isVisible": true
}
],
"conditions": [
{
"conditionType": "PRODUCT",
"entityIds": [
{
"id": 4,
"isNested": false
},
{
"isNested": false
}
],
"value": null
},
{
"conditionType": "ATTRIBUTE",
"entityIds": [
{
"isNested": false
}
],
"value": {
"value": "100",
"condition": "eq"
}
}
]
}
],
"discountPrice": 90,
"settings": {
"allowStacking": true,
"maxDiscountValue": 30,
"allowGiftStacking": false
}
}
}
]
}
Esquema de respuesta
Esquema: IProductsEntity[]
total: número
El número total de productos encontrados.
ejemplo: 100
items: IProductsEntity[]
Un array de entidades de producto.
ejemplo:
[
{
"id": 12345,
"title": "Product 1"
},
{
"id": 67890,
"title": "Product 2"
}
]
items.id: número
El identificador único.
ejemplo: 12345
items.localizeInfos: ILocalizeInfo
El nombre de los productos, teniendo en cuenta la localización.
ejemplo:
items.statusIdentifier: cadena | null
Identificadores de estado de la página del producto (puede ser nulo).
ejemplo: "in_stock"
items.statusLocalizeInfos: ILocalizeInfo
Nombre de estado localizado para el producto.
ejemplo: { "title": "Sale" }
items.attributeSetIdentifier: cadena | null
Id del conjunto de atributos.
ejemplo: "set_12345"
items.position: número
Número del ítem (para ordenar).
ejemplo: 1
items.price: número | null
El valor del precio de la página del producto tomado del índice.
ejemplo: 150.00
items.additional: objeto
Valor adicional del índice.
ejemplo: { prices: { min: 5 max: 150 } }
items.sku: cadena | null
SKU del producto (Unidad de Mantenimiento de Stock), puede ser nulo.
ejemplo: "SKU_12345"
items.isSync: booleano
Indicación de indexación de la página.
ejemplo: true
items.attributeValues: AttributeType
Array de valores de atributos del índice, representados.
ejemplo:
[
{
"id": "color",
"value": "red"
}
]
items.categories: cadena[]
Categorías de productos.
ejemplo:
[
1,
2,
3
]
items.isVisible: booleano
Un signo de visibilidad de la página.
ejemplo: true
items.moduleFormConfigs: Array<IFormConfig>
Configuraciones de formularios del módulo (opcional).
items.rating: IRating
Datos de calificación.
items.isPositionLocked: booleano
Indicador de bloqueo de posición de ordenamiento (opcional).
ejemplo: false
items.relatedIds: número[]
Ids de páginas de productos relacionados.
ejemplo:
[
12345,
67890
]
items.paymentStages: desconocido
Datos de etapas de pago (puede ser nulo).
ejemplo: null
items.discountConfig: Record<string, unknown>
Objeto de configuración de descuento.
ejemplo:
items.templateIdentifier: cadena | null
Id de usuario de la plantilla vinculada.
ejemplo: "template_12345"
items.shortDescTemplateIdentifier: cadena | null
Id de usuario de la plantilla vinculada para una descripción corta.
ejemplo: "short_desc_template_12345"
items.signedPrice: cadena
Signo del precio.
items.productPages: IProductPageRef[]
Array de referencias de páginas de productos que vinculan el producto a sus páginas.
ejemplo:
[
{
"id": 16,
"pageId": 4,
"productId": 15,
"positionId": 244,
"categoryPath": "products"
}
]
productPages.id: número
Identificador único del registro de enlace producto-página.
ejemplo: 16
productPages.pageId: número
Identificador de la página a la que está vinculado el producto.
ejemplo: 4
productPages.productId: número
Identificador del producto.
ejemplo: 15
productPages.positionId: número
Identificador de posición de ordenamiento dentro de la página.
ejemplo: 244
productPages.categoryPath: cadena
Ruta de categoría de la página a la que pertenece el producto.
ejemplo: "products"
items.blocks: cadena[]
Array de identificadores de bloques.
ejemplo:
[
"block_12345",
"block_67890"
]