Administrando Schedulers
Este documento cubre el ciclo de vida de los schedulers: creación con metadatos, listado con búsqueda y filtro, actualización de configuración, monitoreo de salud y eliminación.
Crear un Scheduler
Crea un nuevo scheduler con un nombre visible:
1curl -X POST "https://api.hola.cloud/schedulers" \
2 -H "X-API-Key: TU_API_KEY" \
3 -H "Content-Type: application/json" \
4 -d '{
5 "display_name": "scheduler-correos"
6 }'
1POST /schedulers HTTP/1.1
2Host: api.hola.cloud
3X-API-Key: TU_API_KEY
4Content-Type: application/json
5
6{
7 "display_name": "scheduler-correos"
8}
Respuesta esperada:
1{
2 "id": "sched-a1b2c3d4-e5f6-7890-abcd-ef1234567890",
3 "display_name": "scheduler-correos",
4 "ready": true,
5 "scheduled": 0,
6 "inflight": 0
7}
Listar Schedulers
Lista todos los schedulers de tu cuenta (público):
1curl "https://api.hola.cloud/schedulers"
1GET /schedulers HTTP/1.1
2Host: api.hola.cloud
Respuesta esperada:
1[
2 {
3 "id": "sched-a1b2c3d4-e5f6-7890-abcd-ef1234567890",
4 "display_name": "scheduler-correos",
5 "ready": true,
6 "scheduled": 5,
7 "inflight": 0
8 },
9 {
10 "id": "sched-b2c3d4e5-f6a7-8901-bcde-f12345678901",
11 "display_name": "generador-informes",
12 "ready": true,
13 "scheduled": 0,
14 "inflight": 0
15 }
16]
Obtener Detalles de un Scheduler
Recupera un scheduler por su ID:
1curl "https://api.hola.cloud/schedulers/sched-a1b2c3d4-e5f6-7890-abcd-ef1234567890"
1GET /schedulers/sched-a1b2c3d4-e5f6-7890-abcd-ef1234567890 HTTP/1.1
2Host: api.hola.cloud
Respuesta esperada:
1{
2 "id": "sched-a1b2c3d4-e5f6-7890-abcd-ef1234567890",
3 "display_name": "scheduler-correos",
4 "ready": true,
5 "scheduled": 5,
6 "inflight": 0
7}
Actualizar un Scheduler
Actualiza el nombre visible u otros metadatos:
1curl -X PATCH "https://api.hola.cloud/schedulers/sched-a1b2c3d4-e5f6-7890-abcd-ef1234567890" \
2 -H "X-API-Key: TU_API_KEY" \
3 -H "Content-Type: application/json" \
4 -d '{
5 "display_name": "scheduler-correos-v2"
6 }'
1PATCH /schedulers/sched-a1b2c3d4-e5f6-7890-abcd-ef1234567890 HTTP/1.1
2Host: api.hola.cloud
3X-API-Key: TU_API_KEY
4Content-Type: application/json
5
6{
7 "display_name": "scheduler-correos-v2"
8}
Respuesta esperada:
1{
2 "id": "sched-a1b2c3d4-e5f6-7890-abcd-ef1234567890",
3 "display_name": "scheduler-correos-v2",
4 "ready": true,
5 "scheduled": 5,
6 "inflight": 0
7}
PUT puede usarse indistintamente con PATCH.
Monitoreo de Salud
Verifica el estado de salud de un scheduler en cualquier momento:
1curl "https://api.hola.cloud/schedulers/sched-a1b2c3d4-e5f6-7890-abcd-ef1234567890/health"
1GET /schedulers/sched-a1b2c3d4-e5f6-7890-abcd-ef1234567890/health HTTP/1.1
2Host: api.hola.cloud
Respuesta esperada:
1{
2 "status": "ok",
3 "ready": true,
4 "scheduled": 0,
5 "inflight": 0,
6 "scheduler_id": "sched-a1b2c3d4-e5f6-7890-abcd-ef1234567890"6
7}
Un estado distinto de ok indica que el scheduler no está disponible o está en un estado degradado.
Eliminar un Scheduler
Elimina permanentemente un scheduler y todas sus tareas:
1curl -X DELETE "https://api.hola.cloud/schedulers/sched-a1b2c3d4-e5f6-7890-abcd-ef1234567890" \
2 -H "X-API-Key: TU_API_KEY"
1DELETE /schedulers/sched-a1b2c3d4-e5f6-7890-abcd-ef1234567890 HTTP/1.1
2Host: api.hola.cloud
3X-API-Key: TU_API_KEY
Respuesta esperada: HTTP 204 No Content.
Una vez eliminado, el ID del scheduler ya no es válido y todas las tareas pendientes se descartan.
Comentarios