https://api.nexscope.ai/woocommerce/productCollectionDataEjecutar esta API
Envía una solicitud JSON para ejecutar esta API y recibir los datos de respuesta documentados.
Endpoint
| Método | POST |
| Ruta | https://api.nexscope.ai/woocommerce/productCollectionData |
| Autenticación | Bearer API key |
| Content-Type | application/json |
Parámetros de la solicitud
| Nombre | Tipo | Obligatorio | Descripción |
|---|---|---|---|
storeUrl | string | obligatorio | Público HTTPS tienda raíz o WordPress ruta de instalación. Ejemplo: https://example.com |
keyword | string | opcional | Busca dentro de esta tienda; como máximo 200 caracteres. Ejemplo: shirt |
categoryId | string | opcional | Restricción a una categoría de producto pública. Ejemplo: 16 |
calculatePriceRange | boolean | opcional | Calcular este agregado; por defecto true. Los campos de tienda no soportados pueden ser nulos. Ejemplo: true |
calculateRatingCounts | boolean | opcional | Calcular este agregado; por defecto true. Los campos de tienda no soportados pueden ser nulos. Ejemplo: true |
calculateStockStatusCounts | boolean | opcional | Calcular este agregado; por defecto true. Los campos de tienda no soportados pueden ser nulos. Ejemplo: true |
attributeTaxonomies | array | opcional | Atribuir taxonomías a contar, usando la semántica de OR, por ejemplo pa_color. Vacío predeterminado. Ejemplo: [
"pa_color"
] |
taxonomies | array | opcional | Taxonomías públicas a contar; vacío predeterminado. El soporte de la tienda varía. Ejemplo: [
"product_cat"
] |
Respuesta de ejemplo
Estructura de respuesta de la plataforma. code 0 indica éxito o aceptación; data contiene el resultado de negocio.
{
"code": 0,
"cost": "-1",
"data": {
"cacheHit": false,
"collection": {
"attributeCounts": [
{
"count": 1,
"termId": "16"
}
],
"priceRange": {
"currency": "USD",
"maxPrice": "10.00",
"maxPriceMinor": "1000",
"minPrice": "10.00",
"minPriceMinor": "1000",
"minorUnit": 2
},
"ratingCounts": [
{
"count": 1,
"rating": 5
}
],
"stockStatusCounts": [
{
"count": 1,
"status": "instock"
}
],
"taxonomyCounts": [
{
"count": 1,
"termId": "16"
}
]
},
"fetchedAt": "1792972800000",
"storeUrl": "https://example.com"
},
"msg": null,
"time": "2026-01-01 00:00:00",
"traceId": null,
"ts": "0"
}Campos de respuesta
| Nombre | Tipo | Obligatorio | Descripción |
|---|---|---|---|
code | integer | obligatorio | 0 significa aceptado o exitoso; no cero es un error de plataforma. |
cost | string | obligatorio | Se pasó milisegundos, nunca créditos; -1 peticiones externas de la web. |
data | any | obligatorio | Valor de Data usado por esta operación de API. |
msg | string | null | obligatorio | Valor de Msg usado por esta operación de API. |
time | string | obligatorio | Hora local del servidor: aaaa-mm-dd HH:mm:ss. |
traceId | string | null | obligatorio | Valor de Trace id usado por esta operación de API. |
ts | string | obligatorio | Epoch milisegundos. |
Opción 1 de cualquier alternativa — requiere storeUrl, fetchedAt, cacheHit, collection
| Nombre | Tipo | Obligatorio | Descripción |
|---|---|---|---|
data | object | obligatorio | Valor de Data usado por esta operación de API. |
data.cacheHit | boolean | obligatorio | Si la respuesta fue enviada desde el caché anónimo de 60 segundos. Ejemplo: false |
data.collection | object | obligatorio | Datos públicos normalizados. Faltan valores opcionales que son cadenas nulas o vacías. Ejemplo: {} |
data.collection.attributeCounts | any | opcional | Valor de Attribute counts usado por esta operación de API. |
data.collection.priceRange | any | opcional | Valor de Price range usado por esta operación de API. |
data.collection.ratingCounts | any | opcional | Valor de Rating counts usado por esta operación de API. |
data.collection.stockStatusCounts | any | opcional | Valor de Stock status counts usado por esta operación de API. |
data.collection.taxonomyCounts | any | opcional | Valor de Taxonomy counts usado por esta operación de API. |
data.fetchedAt | string | obligatorio | Obtener tiempo en milisegundos de época; preservado en los golpes de caché. Ejemplo: 1792972800000 |
data.storeUrl | string | obligatorio | Identidad de tienda normalizada. Ejemplo: https://example.com |
Opción 1 de cualquier alternativa
| Nombre | Tipo | Obligatorio | Descripción |
|---|---|---|---|
data.collection.attributeCounts | array | opcional | Nulo cuando la tienda lo desactiva o no lo soporta; el array vacío significa que no hay coincidencias. Ejemplo: [] |
data.collection.attributeCounts[] | object | obligatorio | Elemento de data collection attributeCounts. |
data.collection.attributeCounts[].count | integer | obligatorio | Cuentan los productos en este cubo. Ejemplo: 1 |
data.collection.attributeCounts[].termId | string | obligatorio | Cuchara pública agregada. Ejemplo: 16 |
Opción 2 de cualquier alternativa
| Nombre | Tipo | Obligatorio | Descripción |
|---|---|---|---|
data.collection.attributeCounts | null | opcional | Valor de Attribute counts usado por esta operación de API. |
Opción 1 de cualquier alternativa — requiere currency, minorUnit, minPrice, maxPrice, minPriceMinor, maxPriceMinor
| Nombre | Tipo | Obligatorio | Descripción |
|---|---|---|---|
data.collection.priceRange | object | opcional | Nulo cuando está deshabilitado o no está disponible; cadenas decimales exactas. Ejemplo: {} |
data.collection.priceRange.currency | string | obligatorio | Código de moneda. Ejemplo: USD |
data.collection.priceRange.maxPrice | string | obligatorio | Cantidad exacta; Sufijo menor denota el valor original de la unidad más pequeña. Ejemplo: 10.00 |
data.collection.priceRange.maxPriceMinor | string | obligatorio | Cantidad exacta; Sufijo menor denota el valor original de la unidad más pequeña. Ejemplo: 1000 |
data.collection.priceRange.minPrice | string | obligatorio | Cantidad exacta; Sufijo menor denota el valor original de la unidad más pequeña. Ejemplo: 10.00 |
data.collection.priceRange.minPriceMinor | string | obligatorio | Cantidad exacta; Sufijo menor denota el valor original de la unidad más pequeña. Ejemplo: 1000 |
data.collection.priceRange.minorUnit | integer | obligatorio | Precisión decimal de la moneda. Ejemplo: 2 |
Opción 2 de cualquier alternativa
| Nombre | Tipo | Obligatorio | Descripción |
|---|---|---|---|
data.collection.priceRange | null | opcional | Valor de Price range usado por esta operación de API. |
Opción 1 de cualquier alternativa
| Nombre | Tipo | Obligatorio | Descripción |
|---|---|---|---|
data.collection.ratingCounts | array | opcional | Nulo cuando la tienda lo desactiva o no lo soporta; el array vacío significa que no hay coincidencias. Ejemplo: [] |
data.collection.ratingCounts[] | object | obligatorio | Elemento de data collection ratingCounts. |
data.collection.ratingCounts[].count | integer | obligatorio | Cuentan los productos en este cubo. Ejemplo: 1 |
data.collection.ratingCounts[].rating | integer | obligatorio | Cuchara pública agregada. Ejemplo: 5 |
Opción 2 de cualquier alternativa
| Nombre | Tipo | Obligatorio | Descripción |
|---|---|---|---|
data.collection.ratingCounts | null | opcional | Valor de Rating counts usado por esta operación de API. |
Opción 1 de cualquier alternativa
| Nombre | Tipo | Obligatorio | Descripción |
|---|---|---|---|
data.collection.stockStatusCounts | array | opcional | Nulo cuando la tienda lo desactiva o no lo soporta; el array vacío significa que no hay coincidencias. Ejemplo: [] |
data.collection.stockStatusCounts[] | object | obligatorio | Elemento de data collection stockStatusCounts. |
data.collection.stockStatusCounts[].count | integer | obligatorio | Cuentan los productos en este cubo. Ejemplo: 1 |
data.collection.stockStatusCounts[].status | string | obligatorio | Cuchara pública agregada. Ejemplo: instock |
Opción 2 de cualquier alternativa
| Nombre | Tipo | Obligatorio | Descripción |
|---|---|---|---|
data.collection.stockStatusCounts | null | opcional | Valor de Stock status counts usado por esta operación de API. |
Opción 1 de cualquier alternativa
| Nombre | Tipo | Obligatorio | Descripción |
|---|---|---|---|
data.collection.taxonomyCounts | array | opcional | Nulo cuando la tienda lo desactiva o no lo soporta; el array vacío significa que no hay coincidencias. Ejemplo: [] |
data.collection.taxonomyCounts[] | object | obligatorio | Elemento de data collection taxonomyCounts. |
data.collection.taxonomyCounts[].count | integer | obligatorio | Cuentan los productos en este cubo. Ejemplo: 1 |
data.collection.taxonomyCounts[].termId | string | obligatorio | Cuchara pública agregada. Ejemplo: 16 |
Opción 2 de cualquier alternativa
| Nombre | Tipo | Obligatorio | Descripción |
|---|---|---|---|
data.collection.taxonomyCounts | null | opcional | Valor de Taxonomy counts usado por esta operación de API. |
Opción 2 de cualquier alternativa
| Nombre | Tipo | Obligatorio | Descripción |
|---|---|---|---|
data | null | obligatorio | Valor de Data usado por esta operación de API. |
Respuestas
| Código | Descripción |
|---|---|
| 200 | Respuesta HTTP predeterminada tanto para el éxito como para muchos errores de negocio. Solo el código JSON externo 0 indica éxito o aceptación asíncrona; consulta data para obtener el resultado. |
| 429 | Límite de admisión de ejecuciones; respeta Retry-After cuando esté presente. |
| 503 | La admisión de ejecuciones no está disponible temporalmente; respeta Retry-After cuando esté presente. |
| Opcional | X-Nexscope-Http-Status: semantic asigna estados HTTP a los errores de negocio gestionados por el controlador en las rutas de ejecución y tareas. Los fallos previos a la autenticación, como la ausencia de una clave API (code 11209), pueden seguir devolviendo HTTP 200 antes de esta asignación. Comprueba siempre el código JSON externo; las solicitudes malformadas y los fallos de infraestructura también pueden devolver respuestas HTTP distintas de 200. |
Fuente de datos, vigencia y limitaciones
La fuente, la vigencia, la cobertura, los límites de frecuencia y las notas de estimación no se especifican en esta definición de API salvo que aparezcan en la documentación de campos de solicitud o respuesta anterior. No supongas datos oficiales del mercado ni actualización en tiempo real cuando no estén documentados explícitamente.