Obter contagem total de produtos
Este método retorna o número total de produtos em seu projeto. Você pode opcionalmente passar um corpo de filtro para contar apenas os produtos que correspondem a condições específicas.
✅ Propósito do cenário:
- Obter o número total de produtos
- Opcionalmente filtrar por condições de atributos
- Usar a contagem para paginação ou verificações de disponibilidade
✅ O que você precisa:
- Um PROJECT_URL e APP_TOKEN válidos para autenticação com a API OneEntry.
- Pelo menos um produto no projeto
📌 Importante:
- Estes exemplos não incluem tratamento de erros.
- Você pode gerenciar erros usando um bloco try-catch ou empregando uma construção como await Promise.catch((error) => error).
- Passe um array vazio [] para contar todos os produtos sem filtrar.
📚 Veja na documentação:
📦 Referência do SDK:
Experimente ao vivo
Execute este método interativamente no sandbox do JS SDK — conecte seu Project URL e App Token na primeira visita, depois abra:
- Obter contagem total de produtos — Este método retorna o número total de produtos em seu projeto. Você pode opcionalmente passar um corpo de filtro para contar apenas os produtos que correspondem a condições específicas.
Cenário
1. Importar defineOneEntry do SDK e definir PROJECT_URL e APP_TOKEN
Exemplo:
import { defineOneEntry } from 'oneentry';
import { IFilterParams } from 'oneentry/dist/products/productsInterfaces';
const PROJECT_URL = 'your-project-url';
const APP_TOKEN = 'your-app-token';
2. Criando um cliente API com defineOneEntry()
Exemplo:
const { Products } = defineOneEntry(PROJECT_URL, {
token: APP_TOKEN,
});
3. Opcionalmente, defina um corpo de filtro (array vazio = todos os produtos)
Exemplo:
// To filter, use conditions like: [{ attributeMarker: 'price', conditionMarker: 'mth', conditionValue: 100, isNested: false }]
const body: IFilterParams[] = [];
4. Chame Products.getProductsCount() com getProductsCount()
Exemplo:
const data = await Products.getProductsCount(body);
if ('statusCode' in data) {
throw new Error(data.message);
}
console.log('Count data: ', data);
Resultado:
{
"totalAll": 12,
"totalInCategory": 0,
"totalInCategoryWithNested": 0
}
Exemplo final
// 1. Import defineOneEntry from SDK and define PROJECT_URL and APP_TOKEN
import { defineOneEntry } from 'oneentry';
import { IFilterParams } from 'oneentry/dist/products/productsInterfaces';
const PROJECT_URL = 'your-project-url';
const APP_TOKEN = 'your-app-token';
// 2. Creating an API client with [defineOneEntry()](/docs/index/#Installation)
const { Products } = defineOneEntry(PROJECT_URL, {
token: APP_TOKEN,
});
// 3. Optionally define a filter body (empty array = all products)
// To filter, use conditions like: [{ attributeMarker: 'price', conditionMarker: 'mth', conditionValue: 100, isNested: false }]
const body: IFilterParams[] = [];
// 4. Call Products.getProductsCount() with [getProductsCount()](/docs/products/#getProductsCount)
const data = await Products.getProductsCount(body);
if ('statusCode' in data) {
throw new Error(data.message);
}
console.log('Count data: ', data);