Automatización: reentrenos, llaves de API y avisos
Programa que tus pronósticos se actualicen solos, crea las llaves con las que otro sistema usa la API y configura avisos automáticos (webhooks) hacia tus sistemas.
En esta página
Abre Automatización desde Configuración → Automatización y API. Es una pantalla de administradores. Tiene tres pestañas: Tareas programadas, API Keys y Avisos automáticos. Las dos últimas necesitan un plan con API (el completo o el corporativo); en el plan gratis aparecen bloqueadas con el diálogo para escribirnos.
Tareas programadas

Reentrena una sesión (una «actualización») automáticamente en un horario recurrente, para que el semáforo y las compras sugeridas se calculen con tus datos más nuevos sin que nadie lo lance.
- En Actualización:, elige la sesión (solo aparecen las completadas).
- En Frecuencia, elige: Cada lunes a las 6am, Todos los días a medianoche, Días laborables a las 6am, Cada domingo a las 8am, Cada hora o Primer día del mes. Debajo verás la expresión técnica (por ejemplo
0 6 * * 1). - Deja marcado Programación activada (desmárcalo para pausarla sin borrarla).
- Pulsa «Guardar programación» (o «Actualizar programación» si ya existía). Verás «Guardado.» y la Próxima ejecución.
- Ya programado
- Todas las programaciones de la cuenta, de cualquier sesión, con su frecuencia y próxima ejecución, o «la última corrida falló» con el motivo. Pulsa una para editarla.
- Zona horaria
- Las horas se leen en la zona de la empresa, la de Mi cuenta; la pantalla lo recuerda debajo.
- Eliminar
- Borra la programación de esa sesión (pide confirmación).
- Últimas corridas programadas
- Cada corrida: terminó bien, falló, corriendo, en cola, cancelada o no se ejecutó, con el motivo (sin datos nuevos, la anterior seguía en curso, la fuente no se pudo actualizar, tope diario de entrenamientos alcanzado…).
- Cuánto tarda cada entrenamiento
- Mediana y p95 de tus últimas corridas, por tamaño del catálogo y por granularidad. Úsalo para elegir cada cuánto reentrenar.
Un recálculo que falla no te deja sin números
Cada corrida programada entrena una actualización nueva a partir de la que elegiste, que nunca se toca. Solo cuando la nueva termina bien pasa a ser la que leen el Panel de compras, el semáforo y las alertas. Si falla, sigues viendo los números de la vez anterior, y el error aparece en «Ya programado» y en «Últimas corridas programadas».
Para no llenarte el espacio, cada programación ocupa como mucho dos pronósticos guardados: el que se está leyendo y el que se está entrenando para reemplazarlo. Las actualizaciones que creaste tú no se borran nunca.
API Keys

Las llaves sk_live_… permiten que otro sistema (tu ERP, un script nocturno) use la API en nombre de tu cuenta. La tabla muestra Nombre (con los últimos 4 caracteres), Permiso (Lectura o Lectura y escritura), Creada, Último uso y el botón Revocar.
Crear una llave

- Pulsa «Generar key».
- Escribe un nombre que diga para qué es («Integración ERP»).
- Elige Qué puede hacer la clave: Solo leer (actúa como un usuario de solo lectura: consulta el semáforo) o Leer y escribir (actúa como un analista: puede subir el archivo nocturno y registrar órdenes). Por omisión es Solo leer.
- Pulsa «Crear».
- Copia la llave del recuadro verde con «Copiar». Se muestra una sola vez: StockAI no la guarda, así que si la pierdes creas otra y revocas la anterior.

Revocar una llave

Pulsa «Revocar» en su fila y confirma. Las apps que la usen dejan de funcionar al instante (reciben 401). No se puede deshacer: crea otra si la necesitas.
Sandbox para desarrolladores
Debajo de la tabla, «Crear sandbox» (solo administradores) crea un entorno de prueba aparte con datos de demostración y una llave ya creada, para construir tu integración sin tocar tus datos reales. Muestra una sola vez la llave del sandbox y un usuario y contraseña para ver en la app lo que hicieron tus llamadas. Dura 7 días, no puede enviar correos ni mensajes, y tus llaves no llegan a él (ni la suya a tus datos). «Eliminar» lo borra con sus datos.
Avisos automáticos (webhooks)

Avisa a otro sistema, con un HTTP POST, cuando ocurre algo en tu cuenta.

- Pulsa «Agregar webhook».
- Escribe la URL del endpoint. Debe empezar con
https://. - Marca los Eventos a suscribir (cada uno trae su descripción).
- Pulsa «Guardar».
- Copia la Clave de firma del webhook: se muestra una sola vez. Tu sistema la usa para comprobar que cada aviso viene de StockAI (cabecera
X-StockAI-Signature).
- Órdenes de compra
purchase_order.approved,.rejected,.sent(la primera vez que se envía) y.cancelled.- Quiebre inminente
stockout.imminent: un producto entra en «Pedir ya» en una bodega. Una vez por cambio, no cada día.- Compromisos
commitment.at_risk(un pedido comprometido pasa a estar en riesgo) ycommitment.fulfilled.- Pronósticos
job.completedyjob.failed.- Sincronización de inventario
inventory_sync.run_finished,.blocked(necesita a alguien) y.recovered.
En la tabla, cada webhook muestra su Estado (Activo, Desactivado por fallos, y Solo sus bodegas si lo creó alguien con bodegas limitadas) y estos botones:
- Entregas
- El registro de entregas: fecha, evento, estado (Pendiente, Entregado, Fallido o Descartado), intentos, código HTTP y próximo intento. Las entregas fallidas se reintentan.
- Enviar prueba
- Manda un aviso de prueba y abre el registro para que veas si llegó.
- Rotar clave
- Crea una clave de firma nueva; la anterior deja de valer de inmediato.
- Reactivar
- Solo si se desactivó por fallos.
- Eliminar
- Lo quita al instante, con unos segundos para Deshacer.