Catalog/data-rrule

Data

RFC-5545 RRULE to next occurrences API

Expand an iCalendar RFC-5545 recurrence rule (FREQ + INTERVAL + BYDAY/BYMONTHDAY/BYMONTH + COUNT/UNTIL) from a DTSTART into the next N concrete datetimes. RRULE math (BYDAY ordinals, INTERVAL skips, COUNT/UNTIL bounds) is fiddly and LLMs get it wrong; this is deterministic. Answers 'next 5 occurrences of FREQ=WEEKLY;BYDAY=MO,WE,FR', 'expand this RRULE', 'when does this recurring event fire', '2nd Tuesday of each month'.

Price$0.01per request
MethodPOST
Route/v1/data/rrule
StatusLive
MIME typeapplication/json
Rate limit60/minute
CacheNo cache
datarrulerfc-5545recurrenceicalendaricalrecurringoccurrences
API URLhttps://x402.hexl.dev/v1/data/rrule
Integration docs
Example request
{
  "rrule": "FREQ=WEEKLY;BYDAY=MO,WE,FR",
  "dtstart": "2026-06-01T09:00:00Z",
  "count": 4
}
Example response
{
  "rrule": "FREQ=WEEKLY;BYDAY=MO,WE,FR",
  "dtstart": "2026-06-01T09:00:00.000Z",
  "freq": "WEEKLY",
  "interval": 1,
  "count": 4,
  "occurrences": [
    "2026-06-01T09:00:00.000Z",
    "2026-06-03T09:00:00.000Z",
    "2026-06-05T09:00:00.000Z",
    "2026-06-08T09:00:00.000Z"
  ]
}
Input schema
{
  "type": "object",
  "required": [
    "rrule",
    "dtstart"
  ],
  "properties": {
    "rrule": {
      "type": "string",
      "examples": [
        "FREQ=WEEKLY;BYDAY=MO,WE,FR",
        "FREQ=MONTHLY;BYDAY=2TU"
      ]
    },
    "dtstart": {
      "type": "string",
      "examples": [
        "2026-06-01T09:00:00Z"
      ]
    },
    "count": {
      "type": "number",
      "examples": [
        5
      ]
    }
  }
}
Output schema
{
  "type": "object",
  "additionalProperties": true
}