> ## Documentation Index
> Fetch the complete documentation index at: https://developers.insuranceboosters.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Programación

> Ejecuta una automatización automáticamente en días y horas definidos.

Usa el trigger `cron` para ejecutar una automatización de forma periódica, sin esperar una acción de otro sistema.

## Configuración

```json theme={null}
{
  "type": "cron",
  "cron": "0 9 * * *",
  "timezone": "America/Mexico_City"
}
```

| Campo | Descripción |
| - | - |
| `cron` | Expresión cron de cinco campos. El ejemplo ejecuta todos los días a las 09:00. |
| `timezone` | Zona horaria IANA usada para interpretar la expresión, por ejemplo `America/Mexico_City`. |

Puedes apoyarte en [Crontab Guru](https://crontab.guru/) para leer una expresión cron. Confirma siempre el resultado con la zona horaria elegida.

## Antes de esperar la primera ejecución

**1. Crea la automatización**

Configura `cron` y `timezone`.

**2. Publica y activa**

La programación solo crea ejecuciones para una versión publicada y activa.

**3. Prueba la automatización**

Usa [Ejecutar ahora](https://developers.insuranceboosters.com/automatizaciones/ejecutar-ahora.md) para crear una ejecución inmediata sin esperar al siguiente horario.

## Qué ocurre con horarios omitidos y ejecuciones largas

* Si la automatización estuvo desactivada o el servicio no procesó varios horarios, no se crean todas las ejecuciones anteriores. Se crea como máximo una ejecución pendiente y se calcula el siguiente horario desde ese momento.
* Una ejecución larga no bloquea automáticamente el siguiente horario. Dos ejecuciones del mismo workflow pueden coincidir en el tiempo.
* La zona horaria controla los cambios de horario de verano. Prueba manualmente expresiones cercanas al cambio de hora antes de usarlas en producción.

## Datos disponibles en los pasos

Las ejecuciones programadas incluyen:

```json theme={null}
{
  "source": "cron",
  "firedAt": 1722517200000
}
```

Lee la fecha con `{{trigger.body.firedAt}}`. Es un timestamp Unix en milisegundos y representa el momento en que la plataforma procesó el horario. Cuando usas **Ejecutar ahora**, el evento también incluye `"mode": "manual"`.

## Relacionado

* [Ejecutar ahora](https://developers.insuranceboosters.com/automatizaciones/ejecutar-ahora.md)
* [Publicar automatización](https://developers.insuranceboosters.com/automatizaciones/publicar-automatizacion.md)
* [Activar automatización](https://developers.insuranceboosters.com/automatizaciones/activar-automatizacion.md)
* [Reintentos e idempotencia](https://developers.insuranceboosters.com/automatizaciones/triggers/reintentos-idempotencia.md)


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.