ForHosting KIT · Fechas y tiempo

Generador de fechas recurrentes

Cada 7 días del 1 de enero al 26 de febrero de 2024 salen 9 fechas, con la primera y la última incluidas. Indique un inicio, un intervalo en días y un fin para listar cada fecha de esa cadencia, para reuniones, facturación o recordatorios. Gratis en su navegador.

  • Gratis
  • Funciona en su navegador
  • Sin registro
  • Sus datos no salen de su equipo
Úselo desde WebAPIEmailTelegramApp pronto
Si escribe
Inicio
2024-01-01
Días de intervalo
7
Fin
2024-02-26
Obtiene
Cantidad
9
Días de tramo
56

Un generador de fechas recurrentes responde a una pregunta práctica de planificación: dado un primer día de calendario, un intervalo fijo de días enteros y un día final, ¿qué fechas caen en esa cadencia dentro de la ventana inclusiva? Los equipos lo usan para standups quincenales, corridas de facturación semanales, recordatorios de medicación cada tres días y cualquier agenda que no sea una expresión cron completa.

Cómo se define la serie inclusiva a pasos de días

Start es la primera ocurrencia candidata como fecha de calendario ISO YYYY-MM-DD; se aceptan fechas-hora ISO-8601 y solo se usa la parte de fecha de calendario para el avance. Interval_days es un entero positivo que indica el hueco en días enteros entre ocurrencias consecutivas—siete para semanal, catorce para quincenal, treinta para un plan simple cada treinta días, y así sucesivamente. End es la última fecha que puede aparecer en la lista; el rango es inclusivo, así que si una fecha escalonada cae exactamente en end se conserva.

El motor convierte start y end en números seriales de día civil con fórmulas enteras al estilo Howard Hinnant, y emite start, start más el intervalo, start más el doble del intervalo, y así mientras el día serial sea menor o igual que end. Si start es posterior a end el arreglo dates queda vacío y count es cero en lugar de un error, lo que simplifica los trabajos por lotes.

Cuadrículas de recordatorios y medicación

Aplicaciones de salud y hábitos listan cada dosis o control cada N días entre dos límites de calendario sin incrustar motores RRULE completos para el caso simple de hueco fijo.

¿Cómo genero fechas recurrentes cada N días?

La respuesta incluye un arreglo dates con cada ocurrencia del rango inclusivo.

¿Qué ocurre si el intervalo es cero o negativo?

Interval_days debe ser un entero positivo para que el paso no pueda ciclar sin fin; los fallos de validación no se cobran.

¿Se incluye la fecha final?

Sí. El rango es inclusivo: si una fecha escalonada cae exactamente en end, aparece en dates. Si start es posterior a end, dates está vacío y count es cero.

¿Es gratuito el generador de fechas recurrentes?

La herramienta del navegador se ejecuta gratis en su dispositivo.

¿Usa mi zona horaria local o Date de JavaScript?

No. El avance usa aritmética pura de días civiles gregorianos solo sobre la parte de calendario YYYY-MM-DD, así que los resultados son deterministas entre hosts y zonas horarias.

Todo lo de esta página está disponible por programación. Esta sección es para equipos que quieren integrarlo en sus sistemas; el resto puede usar la herramienta de arriba sin más.

POSThttps://api.kit.forhosting.com/date/recurring-dates

¿Prefiere automatizarlo? Un POST autenticado crea la tarea; el resultado llega por webhook o enlace firmado. La misma capacidad también se ejecuta aquí en la web, por email y desde Telegram — y pronto también desde nuestra app.

curl -X POST https://api.kit.forhosting.com/date/recurring-dates \
  -H "Authorization: Bearer $KIT_KEY" \
  -H "Content-Type: application/json" \
  -d '{"start":"2024-01-01","interval_days":7,"end":"2024-02-26"}'
{
  "start": "2024-01-01",
  "interval_days": 7,
  "end": "2024-02-26"
}
{
  "task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
  "type": "date.recurring_dates",
  "status": "queued",
  "_links": {
    "result": "/tasks/tsk_…/result"
  }
}

La API es asíncrona: la llamada devuelve un task_id al instante y el resultado llega por webhook. El polling está limitado a 1 req/s por tarea.

Por solicitud$0.002

Precio publicado — sin tokens ni créditos inventados. Una tarea fallida no se cobra.

HTTPCódigoSignificado
401unauthorizedAPI key ausente o inválida.
402insufficient_balanceEl saldo no cubre el precio de la tarea.
404unknown_typeEl tipo de tarea no existe.
429rate_limitedDemasiadas peticiones. Use el webhook en vez de sondear.

Esta capacidad calcula la serie con aritmética pura de días civiles gregorianos, sin tocar el reloj del host ni zonas horarias flotantes para la parte de fecha, de modo que el mismo JSON vuelve siempre con las mismas entradas. Un intervalo no positivo se rechaza como invalid_input para que un paso cero no gire sin fin.

Cómo se define la serie inclusiva a pasos de días

Proporcione tres campos: start, interval_days y end. Campos ausentes, fechas mal formadas, días imposibles como el treinta y uno de febrero, y cualquier intervalo cero o negativo fallan con invalid_input y no se cobran. Alias opcionales como from, to e interval se asignan a los mismos parámetros para que quienes llaman desde un SDK usen nombres familiares sin cambiar la matemática.

Cómo leer la respuesta y elegir un intervalo práctico

Span_days es la diferencia con signo entre los días seriales de end y start, útil para resúmenes de IU incluso cuando la lista está vacía. Inclusive es siempre true para que los clientes no deban adivinar las reglas de borde. Use solo count cuando necesite cuántos aciertos caen en un trimestre; use el arreglo completo dates cuando calendarios, recordatorios o exportaciones CSV necesiten cada fila. En éxito la respuesta repite start y end normalizados como YYYY-MM-DD, el interval_days que envió, count como la longitud de la serie, y dates como un arreglo ascendente de cadenas de calendario ISO. Method es siempre recurring_dates de modo que los enrutadores posteriores puedan ramificar sin inspeccionar formas. Elija interval_days para que coincida con la cadencia real: uno para cada día, siete para el mismo día de la semana cada semana desde start, catorce para cada dos semanas, y pasos mayores cuando solo necesite hitos dispersos. El tope de interval_days es tres mil seiscientos cincuenta para que una sola solicitud no pida pasos absurdos de varias décadas; el recuento de ocurrencias también está acotado por seguridad del Worker, así que rangos muy largos con paso de uno deben partirse en trozos.

Uso de la API, precios, flujos de trabajo y límites

Llame al generador gratuito de fechas recurrentes en el navegador para demos de planificación, comprobaciones en hojas de cálculo y maquetas de producto sin instalar bibliotecas de calendario en cada lenguaje. Las entradas de origen siguen las mismas reglas de retención que otros ítems parse de KIT. Prefiera ventanas a escala de calendario para tablas de IU y mantenga series diarias muy densas dentro del tope de ocurrencias publicado. Envíe un cuerpo JSON con start, interval_days y end obligatorios. Use la API prepago cuando una tubería de facturación, un servicio de recordatorios, un planificador curricular o un runbook de operaciones necesite un contrato estable bajo saldo KIT a $0.002 por ítem exitoso; los fallos de validación nunca consumen saldo tras el rechazo del motor. Combine este endpoint con contadores de días hábiles cuando deba saltar fines de semana y festivos, o con herramientas de próxima ejecución cron cuando necesite horas de reloj de pared en lugar de una lista pura de días. Quienes envían SDK pueden mapear el arreglo dates directamente a selectores de fecha, constructores ICS y columnas de tabla—la misma secuencia que un planificador escribiría a mano al marcar cada N días en un calendario de pared desde el primer día hasta el último.

Listas de planificación semanal y quincenal

Equipos de producto y operaciones generan series al estilo de cada lunes desde un inicio conocido hasta el fin de trimestre con interval_days en 7 o 14 y exportan el arreglo dates a calendarios u hojas de cálculo.

Fechas de factura e informes periódicos

Scripts financieros calculan días recurrentes de factura o informe con un hueco fijo de días y fijan el JSON en pruebas para que los lotes no deriven entre entornos.

Ver la documentación completa del KIT →