Dataset limits
Time model and coverage
The generated calendar covers Lilyan years -14025 through -1 and 1 through 15166. Their proleptic Gregorian anchor years are astronomical year -11999 (12000 BC) through 17191. Year zero is not a valid Lilyan year.
- TT
- Terrestrial Time is the uniform timescale used for modelled astronomical boundaries. TT Julian dates remain available across the full supported range.
- UT1
- Universal Time follows the observed rotation of Earth. It supplies the rotational basis for Bonn solar midnight and is modelled where direct Earth-orientation observations do not exist.
- UTC
- Internationally coordinated UTC began in 1960; its present leap-second form took effect in 1972. This API conservatively emits UTC and CET datetimes only from
1965-01-01through six months after evaluation. Future leap seconds cannot be known beyond announced data.
How the reference data was generated
A compact correction corpus was measured from JPL DE441 rather than shipping the full ephemeris. Within that corpus, measured maximum errors are 0.143166859 solar seconds for solar phase and 0.250411034 TT seconds for reconstructed seasonal and lunar events.
Outside the corrected interval, the service uses the Meeus/VSOP87D analytical model. At the far endpoint, the final measured correction fades over 100 Julian years before the analytical model runs alone. Extreme extrapolations are rough estimates because long-term Earth rotation, Delta-T, and future leap seconds are not predictable.
/api/time/convertConverts a fixed CET datetime to a Lilyan calendar date and Bonn solar clock time, or converts a Lilyan datetime back to CET.
Query parameters
| Direction | Parameters | Example |
|---|---|---|
| CET to Lilyan | from=cet, datetime | datetime=2026-07-14T15:30:00 |
| Lilyan to CET | from=lytime, year, month, day, time | year=1&month=5&day=1&time=12:00:00 |
/api/time/nextDaysReturns the current Lilyan solar day, the immediately following day, and an optional look-ahead window. Boundaries include TT Julian dates; UTC and CET values appear only inside the civil-time validity window.
Query parameters
| Name | Type | Default | Description |
|---|---|---|---|
n | integer | 7 | Additional days to return. Minimum 0, maximum 31. |
Response
currentis the day containing the evaluation instant.nextAvailableDayis prefetched even whenn=0.dayscontains compact day records, including true day length, solar noon, TT boundaries, and optional holidays.coverage.civilTimeValiditystates the exact rolling UTC interval used for civil datetimes.
/api/calendar/yearsReturns calendar structure for one or more Lilyan years. Every day has a date-only proleptic Gregorian mapping. TT month boundaries are universal; optional UTC and CET boundary datetimes follow the validity policy above.
Query parameters
| Name | Type | Default | Description |
|---|---|---|---|
startYear | integer | current | First Lilyan year, inclusive. Zero is skipped. |
endYear | integer | startYear | Last Lilyan year, inclusive. A request may span at most 20 years. |
Response
boundaryTimeScaleisTT.weekdayConventionisMonday0.startGregorianDateand each day'sgregorianDateare date-only values, not claims about historical UTC.- Empty holiday arrays and derivable counts are omitted.
/api/calendar/ceticilia_holidays.icsReturns an iCalendar feed of date-only Ceticilian holidays within the rolling civil-time validity window.
Query parameters
| Name | Type | Description |
|---|---|---|
pastDays | integer | Days before evaluation, capped at 186. |
futureDays | integer | Days after evaluation, capped at 370 and by civil-time validity. |
Subscribe with webcal://datetime.cet.is/api/calendar/ceticilia_holidays.ics.