Calendar Year Endpoint

Get full liturgical calendar data for an entire year.

Request

GET /calendar/year/{year}

Parameters:

Parameter Type In Description
year integer path Year in YYYY format (e.g., 2024).
lang string query ru (default) or en.
type integer query Filter saints by legacy classification ID (typeId).

Constraints: supported years 2000–3000.

Response

Returns a JSON object with metadata and a data object containing entries for every day of the year.

Each day entry includes weekAfterPentecost as an always-present numeric Pentecost-cycle week. All id-backed entities inside saints[] and events[] include icons[] with the same shape as /calendar/day/{date} and /hymnography.

In saints[], typeId and types expose the legacy classification derived from CSV type; they are not the liturgical rank. Source-backed entries may also include optional presentation fields displayTypeId and displayTypes derived from CSV display_type; consumers may use displayTypeId ?? typeId for display placement. The type query parameter filters only by legacy typeId.

Every saints[] item has liturgicalRank: { code, group, label } when confirmed, otherwise null. The label follows lang.

{
  "meta": {
    "year": 2024,
    "from": "2024-01-01",
    "to": "2024-12-31",
    "count": 366,
    "lang": "ru"
  },
  "data": {
    "2024-01-01": { /* Day Data Output */ },
    "2024-01-02": { /* ... */ }
    // ...
  }
}

Example (JavaScript)

const year = 2024;
fetch(`https://api.ispovednik.org/api/v1/calendar/year/${year}?lang=en`)
  .then(response => response.json())
  .then(data => console.log(data));