Documentación técnica de los endpoints públicos de consulta de productos y variantes autorizadas.
Devuelve la lista completa de productos activos y publicados (status = 'active' y published = 1),
anidando dentro de cada producto únicamente sus variantes públicas y visibles (published = 1 y visible = 1).
curl -X GET "https://TU_DOMINIO/KiaiAPI/get_public_catalog.php"
{
"status": "success",
"count": 55,
"data": [
{
"id": 1,
"shopifyid": 7238684475471,
"title": "Daedo KATA 1158 Karategi COMPETITION PRO BUNKAI",
"bodyhtml": "<p>Descripción del producto...</p>",
"vendor": "Daedo",
"producttype": "KarateGi",
"status": "active",
"published": 1,
"variants": [
{
"sku": "1158-160",
"title": "Daedo KATA 1158 160 cm",
"subtitle": "160 cm",
"pricelist": 3450.0
}
]
}
]
}
Busca una variante pública por su código sku y devuelve la información del producto padre autorizado,
los datos del SKU coincidente (matched_sku) y, opcionalmente, todas las variantes públicas asociadas al producto.
| Parámetro | Tipo | Por Defecto | Descripción |
|---|---|---|---|
sku Requerido |
string |
— | Código exacto del SKU de la variante a consultar. |
variants Opcional |
boolean | int |
1 (true) |
Usa 1 o true para incluir el arreglo variants con todas las variantes públicas del producto.Usa 0 o false para devolver el producto sin el listado de variantes.
|
# 1. Consultar producto por SKU incluyendo todas sus variantes curl -X GET "https://TU_DOMINIO/KiaiAPI/get_product_by_sku.php?sku=UM%2016000&variants=1" # 2. Consultar producto por SKU SIN listado de variantes curl -X GET "https://TU_DOMINIO/KiaiAPI/get_product_by_sku.php?sku=UM%2016000&variants=0"
variants=1){
"status": "success",
"data": {
"id": 842,
"title": "Piso Tatami Rojo/azul 25 mm",
"vendor": "Unimat",
"status": "active",
"published": 1,
"matched_sku": {
"sku": "UM 16000",
"title": "Piso Tatami Rojo/Azul 25mm 1x1",
"subtitle": "Rojo/Azul 1x1x25",
"pricelist": 600.0
},
"variants": [
{
"sku": "UM 16000",
"title": "Piso Tatami Rojo/Azul 25mm 1x1",
"subtitle": "Rojo/Azul 1x1x25",
"pricelist": 600.0
}
]
}
}
variants=0){
"status": "success",
"data": {
"id": 842,
"title": "Piso Tatami Rojo/azul 25 mm",
"vendor": "Unimat",
"status": "active",
"published": 1,
"matched_sku": {
"sku": "UM 16000",
"title": "Piso Tatami Rojo/Azul 25mm 1x1",
"subtitle": "Rojo/Azul 1x1x25",
"pricelist": 600.0
}
}
}
| Código HTTP | Significado | Payload de Ejemplo |
|---|---|---|
200 OK |
Consulta procesada correctamente. | {"status": "success", "data": ...} |
204 No Content |
Respuesta a petición CORS preflight (OPTIONS). |
(Sin cuerpo) |
400 Bad Request |
Parámetro obligatorio ausente o vacío (ej. falta sku). |
{"status": "error", "message": "El parámetro \"sku\" es obligatorio."} |
404 Not Found |
El SKU o producto no existe o no está autorizado públicamente. | {"status": "error", "message": "Producto o SKU no encontrado o no disponible públicamente."} |
405 Method Not Allowed |
Se utilizó un método distinto a GET (ej. POST, DELETE). |
{"status": "error", "message": "Método no permitido. Solo se aceptan peticiones GET."} |
500 Internal Server Error |
Fallo de conexión o excepción interna (detalles ocultos por seguridad). | {"status": "error", "message": "Error interno del servidor"} |