Saltar al contenido principal

getRelatedProductsById

Busca todos los objetos de productos relacionados por el id de la página.

Descripción

Este método recupera todos los objetos de página de productos relacionados para un producto específico basado en su identificador (id) desde la API. Acepta un parámetro opcional userQuery para parámetros de consulta adicionales como offset, limit, sortOrder y sortKey. Devuelve una Promesa que se resuelve en un objeto IProductsResponse.

Products.getRelatedProductsById( id, langCode, userQuery );

Esquema de parámetros

Esquema

id: number
Identificador de la página del producto para el cual encontrar la relación
ejemplo: 12345

langCode: string
Código de idioma. Predeterminado: "en_US"
ejemplo: "en_US"

userQuery: IProductsQuery
Parámetros de consulta opcionales
ejemplo:

{
"limit": 30,
"offset": 0,
"sortOrder": "DESC",
"sortKey": "id",
"statusId": 123,
"statusMarker": "in_stock",
"conditionValue": "new",
"conditionMarker": "equals",
"attributeMarker": "color"
}

userQuery.offset(required): number
Parámetro para la paginación. Predeterminado: 0.

userQuery.limit(required): number
Parámetro para la paginación. Predeterminado: 30.

userQuery.sortOrder(required): string
Orden de clasificación "DESC" | "ASC". Predeterminado: "DESC".

userQuery.sortKey(required): string
Campo para ordenar (predeterminado - null). Valores posibles: "id", "position", "title", "date", "price". Predeterminado: null.

userQuery.signPrice: string
Signo de precio. Predeterminado: null.

userQuery.templateMarker: string | null
Marcador de plantilla de página de producto, predeterminado null.
ejemplo: "template_12345"

userQuery.statusMarker: string | null
Marcador de estado de página de producto, predeterminado null.
ejemplo: "in_stock"

userQuery.conditionValue: string | null
El valor que se está buscando, predeterminado null.
ejemplo: "new"

userQuery.attributeMarker: string | null
El identificador de texto del atributo indexado por el cual se filtran los valores, predeterminado null.
ejemplo: "color"

userQuery.conditionMarker: string | null
Marcador de la condición de filtro por la cual se filtran los valores, predeterminado null.
ejemplo: "equals"

Por defecto, puedes recuperar 10 objetos. Esto se debe al límite de registros en la configuración de permisos del módulo.
Para que la paginación funcione correctamente, necesitas configurar Permisos del módulo de acuerdo a tus necesidades en la sección correspondiente.

Ejemplos

Ejemplo mínimo

const response = await Products.getRelatedProductsById(1);

Ejemplo con atributos


const userQuery = {
"offset": 0,
"limit": 30,
"sortOrder": "DESC",
"sortKey": "id"
};

const response = await Products.getRelatedProductsById(1, 'en_US', userQuery);

Usa condiciones para encontrar datos específicos de productos:

attributeMarker: El identificador de texto del atributo indexado por el cual se filtran los valores. conditionMarker: El tipo de condición que se aplica al valor del atributo.

MarcadorSignificadoEjemplo
eqIgualstatusId = 1 (solo activo)
neqNo igualrole ≠ "Viewer"
inContiene (uno de)role in ["Editor", "Manager"]
ninNo contieneemail not in ["@temp.com"]
exsExiste (tiene valor)Tiene lastLogin
nexsNo existeNunca ha iniciado sesión

conditionValue: El valor con el que comparar.

Ejemplo de respuesta

{
"items": [],
"total": 0
}

Esquema de respuesta

Esquema: IProductsResponse

total: number
El número total de productos encontrados.
ejemplo: 100

items: IProductsEntity[]
Un array de entidades de productos.
ejemplo:

[
{
"id": 12345,
"title": "Product 1"
},
{
"id": 67890,
"title": "Product 2"
}
]

items.id: number
El identificador único.
ejemplo: 12345

items.localizeInfos: ILocalizeInfo
El nombre de los productos, teniendo en cuenta la localización.
ejemplo:

items.statusIdentifier: string | null
Identificadores de estado de página de producto (puede ser null).
ejemplo: "in_stock"

items.statusLocalizeInfos: Record<string, any>
Descripción JSON del objeto de estado del ítem, teniendo en cuenta el idioma.
ejemplo:

items.attributeSetIdentifier: string | null
Conjunto de identificadores de atributos.
ejemplo: "set_12345"

items.position: number
Número del ítem (para ordenar).
ejemplo: 1

items.price: number | null
El valor del precio de la página del producto tomado del índice.
ejemplo: 150.00

items.additional: object
Valor adicional del índice.
ejemplo:

{
"en": "In Stock",
"de": "Auf Lager"
}

items.sku: string | null
SKU del producto (Unidad de Mantenimiento de Stock), puede ser null.
ejemplo: "SKU_12345"

items.isSync: boolean
Indicación de indexación de página.
ejemplo: true

items.attributeValues: AttributeType
Array de valores de atributos del índice, representados.
ejemplo:

[
{
"id": "color",
"value": "red"
}
]

items.categories: string[]
Categorías de productos.
ejemplo:

[
1,
2,
3
]

items.isVisible: boolean
Un signo de visibilidad de la página.
ejemplo: true

items.moduleFormConfigs: Array<IFormConfig>
Configuraciones de formularios del módulo (opcional).

items.isPositionLocked: boolean
Indicador de bloqueo de posición de orden (opcional).
ejemplo: false

items.relatedIds: number[]
Ids de páginas de productos relacionadas.
ejemplo:

[
12345,
67890
]

items.templateIdentifier: string | null
Id de usuario de la plantilla vinculada.
ejemplo: "template_12345"

items.shortDescTemplateIdentifier: string | null
Id de usuario de la plantilla vinculada para una descripción corta.
ejemplo: "short_desc_template_12345"

items.signedPrice: string
Signo de precio.

items.productPages: Array<Record<string, any>> | Record<string, any>
Array de páginas de productos o un solo objeto de página de producto.
ejemplo: []

items.blocks: string[]
Array de identificadores de bloques.
ejemplo:

[
"block_12345",
"block_67890"
]