getRelatedProductsById
Pesquise por todos os objetos de produtos relacionados pelo id da página.
Descrição
Este método recupera todos os objetos de página de produtos relacionados para um produto específico com base em seu identificador (id) da API. Ele aceita um parâmetro opcional userQuery para parâmetros de consulta adicionais, como offset, limit, sortOrder e sortKey. Retorna uma Promise que resolve para um objeto IProductsResponse.
Products.getRelatedProductsById(
id,
langCode,
userQuery
);
Esquema de parâmetros
Esquema
id: number
Identificador da página do produto para o qual encontrar relacionamento
exemplo: 12345
langCode: string
Código do idioma. Padrão: "en_US"
exemplo: "en_US"
userQuery: IProductsQuery
Conjunto opcional de parâmetros de consulta
exemplo:
{
"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 paginação. Padrão: 0.
userQuery.limit(required): number
Parâmetro para paginação. Padrão: 30.
userQuery.sortOrder(required): string
Ordem de classificação "DESC" | "ASC". Padrão: "DESC".
userQuery.sortKey(required): string
Campo para ordenação (padrão - null). Valores possíveis: "id", "position", "title", "date", "price". Padrão: null.
userQuery.signPrice: string
Sinal de preço. Padrão: null.
userQuery.templateMarker: string | null
Marcador de template da página do produto, padrão null.
exemplo: "template_12345"
userQuery.statusMarker: string | null
Marcador de status da página do produto, padrão null.
exemplo: "in_stock"
userQuery.conditionValue: string | null
O valor que está sendo pesquisado, padrão null.
exemplo: "new"
userQuery.attributeMarker: string | null
O identificador de texto do atributo indexado pelo qual os valores são filtrados, padrão null.
exemplo: "color"
userQuery.conditionMarker: string | null
Marcador da condição de filtro pela qual os valores são filtrados, padrão null.
exemplo: "equals"
Por padrão, você pode recuperar 10 objetos. Isso se deve ao limite de registro nas configurações de permissões do módulo.
Para que a paginação funcione corretamente, você precisa configurar as Permissões do módulo de acordo com suas necessidades na seção correspondente.
Exemplos
Exemplo mínimo
const response = await Products.getRelatedProductsById(1);
Exemplo com atributos
const userQuery = { "offset": 0, "limit": 30, "sortOrder": "DESC", "sortKey": "id"};
const response = await Products.getRelatedProductsById(1, 'en_US', userQuery);
Use condições para encontrar dados específicos de produtos:
attributeMarker: O identificador de texto do atributo indexado pelo qual os valores são filtrados. conditionMarker: O tipo de condição a ser aplicada ao valor do atributo.
| Marcador | Significado | Exemplo |
|---|---|---|
| eq | Igual | statusId = 1 (apenas ativo) |
| neq | Não igual | role ≠ "Viewer" |
| in | Contém (um dos) | role in ["Editor", "Manager"] |
| nin | Não contém | email not in ["@temp.com"] |
| exs | Existe (tem valor) | Tem lastLogin |
| nexs | Não existe | Nunca fez login |
conditionValue: O valor a ser comparado.
Exemplo de resposta
{
"items": [],
"total": 0
}
Esquema de resposta
Esquema: IProductsResponse
total: number
O número total de produtos encontrados.
exemplo: 100
items: IProductsEntity[]
Um array de entidades de produtos.
exemplo:
[
{
"id": 12345,
"title": "Product 1"
},
{
"id": 67890,
"title": "Product 2"
}
]
items.id: number
O identificador único.
exemplo: 12345
items.localizeInfos: ILocalizeInfo
O nome dos produtos, levando em conta a localização.
exemplo:
items.statusIdentifier: string | null
Identificadores de status da página do produto (podem ser nulos).
exemplo: "in_stock"
items.statusLocalizeInfos: Record<string, any>
Descrição JSON do objeto de status do item, levando em conta o idioma.
exemplo:
items.attributeSetIdentifier: string | null
Conjunto de identificadores de atributos.
exemplo: "set_12345"
items.position: number
Número do item (para ordenação).
exemplo: 1
items.price: number | null
O valor do preço da página do produto retirado do índice.
exemplo: 150.00
items.additional: object
Valor adicional do índice.
exemplo:
{
"en": "In Stock",
"de": "Auf Lager"
}
items.sku: string | null
SKU do produto (Stock Keeping Unit), pode ser nulo.
exemplo: "SKU_12345"
items.isSync: boolean
Indicação de indexação da página.
exemplo: true
items.attributeValues: AttributeType
Array de valores de atributos do índice, representados.
exemplo:
[
{
"id": "color",
"value": "red"
}
]
items.categories: string[]
Categorias de produtos.
exemplo:
[
1,
2,
3
]
items.isVisible: boolean
Um sinal de visibilidade da página.
exemplo: true
items.moduleFormConfigs: Array<IFormConfig>
Configurações de formulário do módulo (opcional).
items.isPositionLocked: boolean
Indicador de bloqueio da posição de ordenação (opcional).
exemplo: false
items.relatedIds: number[]
Ids das páginas de produtos relacionadas.
exemplo:
[
12345,
67890
]
items.templateIdentifier: string | null
Id do usuário do template vinculado.
exemplo: "template_12345"
items.shortDescTemplateIdentifier: string | null
Id do usuário do template vinculado para uma descrição curta.
exemplo: "short_desc_template_12345"
items.signedPrice: string
Sinal de preço.
items.productPages: Array<Record<string, any>> | Record<string, any>
Array de páginas de produtos ou um único objeto de página de produto.
exemplo: []
items.blocks: string[]
Array de identificadores de blocos.
exemplo:
[
"block_12345",
"block_67890"
]