For PMS, channel managers and booking platforms
iCal Polling & Calendar Webhook Infrastructure
Your users connect Airbnb, Booking.com, VRBO and Google Calendar feeds. YourCals polls them, diffs the .ics, and POSTs a parsed, signed JSON delta to your endpoint — so your workers stay idle until something actually changes.
Production workspace
All feeds healthy1,284 feeds · 24 provider accounts · 96 polls/day each
- Changes · 24 h
- signed and delivered312
- Largest feed · 24 h
- Acme — Athens Villa42
- Poll requests · 24 h
- 96.1% were 304s123,264
- Acme12 calendars · 3 channels+4 eventsjust now
- HolidayRental38 apartments · Hostaway+11 events2 min ago
- Trip.com3 locations · Google Calendarno change18 min ago
- Tripadvisor5 gîtes · Alloggioprovider slowbackoff 10m
Most polls find nothing. You pay for every one.
Your workers ask every provider “anything new?” around 96 times a day. YourCals takes that traffic over — conditional requests, retries and backoff — and POSTs a signed delta only when a calendar really moved.
Built for feeds you do not control
YourCals takes over the recurring HTTP traffic, the backoff loops and the .ics diffing your workers are doing today. You get a signed JSON delta when something really changed, and silence when nothing did.
Stop paying for unchanged polls
An always-on ICS feed monitor: conditional requests with ETag and Last-Modified mean a feed that has not moved answers 304, so the wasted round trip never becomes a wasted parse, a wasted write or a worker job.
Never parse raw .ics again
iCal parsing and calendar diff detection are ours to maintain. You receive added, modified and deleted events as JSON — or just the fact that something changed, if that is all you need. No recurring-rule edge cases, no parser to keep alive.
One fetch, many subscribers
When several of your users connect the same public calendar, we poll it once and notify every listener. The same infrastructure carries a few thousand feeds or a million subscriptions.
Reliable by construction
Written in Go. HMAC-SHA256 signed deliveries, SSRF checks on every fetch, webhook delivery retry with backoff, and a circuit breaker that stops hammering an endpoint which is already down.
How the ingestion works
You register a feed once. YourCals takes over the traffic, the parsing and the delivery.
Register the URLs your users connect
Pass us the third-party iCal or webcal URLs your users connected — Airbnb, Booking.com, VRBO, Google Calendar. PMS integration is a single API call: nothing changes on the provider's side and nothing new runs on yours.
We poll and buffer in the background
YourCals handles the recurring HTTP traffic, ETag caching, backoff and rate limits. Your application servers stay idle until a calendar actually moves.
Receive a pre-parsed JSON delta
When a booking or reservation changes, we diff the .ics snapshot and POST the change set — signed — to your endpoint.
No VCALENDAR string ever reaches your endpoint. We parse the snapshot and send only what moved.
{
"event": "ical.changed",
"subscription_id": "8f2c1d4a-6b3e-4c9a-9d21-7a5e0b6c3f18",
"external_id": "team-calendar",
"ical_url": "https://example.com/team.ics",
"timestamp": "2026-10-02T08:00:12Z",
"changes": {
"added": [
{
"uid": "[email protected]",
"summary": "Team sync",
"location": "Zoom",
"dtstart": "2026-10-02T08:00:00Z",
"dtend": "2026-10-02T08:30:00Z"
}
],
"modified": [],
"deleted": []
}
}Deliveries are signed with HMAC-SHA256 over the timestamp and the raw body, in the X-Hub-Signature-256 header. Receivers reject anything older than five minutes, so a captured delivery cannot be replayed.
Pricing that follows your feeds
Pick a plan by how many feeds you watch. Webhook deliveries are never metered: there is no charge per notification and no charge per poll.
Free
€0per month
€0 per feed / month
Enough for side projects and a first integration.
- 1 project
- Up to 300 feeds
- 15-minute polling
- Signed webhooks
Starter
Most popular€39per month
€399 for twelve months instead of €468 — you save €69
€0.013 per feed / month
For products that watch feeds on behalf of their customers.
- Up to 3,000 feeds
- Adaptive polling
- Notify-only or content payloads
- Scheduled downtime windows
Growth
€99per month
€999 for twelve months instead of €1188 — you save €189
€0.0099 per feed / month
For a production catalogue of calendars, not a first integration.
- Up to 10,000 feeds
- Adaptive polling
- Notify-only or content payloads
- Scheduled downtime windows
Enterprise
Customvolume pricing
For feed volumes where a listed price stops being the point.
- Above 10,000 feeds
- Volume pricing
- Data processing agreement
- Priority support
Annual billing is charged once for twelve months and saves 15% on Starter and 16% on Growth. Every plan includes unlimited signed deliveries — you pay for feeds, not for notifications.
Frequently asked questions
The answers that come up most often before a first integration.
Something missing? Ask us directly.
How often does YourCals poll iCal feeds?
Polling frequencies depend on your plan, ranging from real-time dynamic intervals to scheduled background syncs.
What happens when a calendar event changes?
YourCals detects the diff/delta in the iCal feed and instantly triggers an HTTP POST webhook payload to your endpoint.
We already poll feeds in our own workers. Why move?
Because most of that traffic buys you nothing: an unchanged feed still costs a full round trip and a parse to learn that nothing happened. YourCals keeps the validator state per feed, so an unchanged calendar stops at a 304 and only real changes reach your API. The crons, the retry queues and the parser go with it.
What has to change on our side?
An endpoint that accepts a POST and verifies our signature. Everything else is ours: registering feeds through the API or the dashboard, polling them, validating the response, diffing it and delivering the change set. The calendar providers never hear from you.
How does billing work?
Monthly or annually, per plan, in euros. The annual price is charged once for twelve months and saves 15% on Starter and 16% on Growth. Webhook deliveries are never metered, so a calendar that moves every hour costs the same as one that never moves.
What counts as a feed?
One iCal or webcal URL, wherever it comes from. If several of your users connect the same public calendar, YourCals fetches it once and notifies each of them, so a popular calendar is not polled once per subscriber.
Do you store calendar data?
By default YourCals stores only a hash of each feed. Notify-only mode sends the event name and the feed URL, and nothing from inside the events, which keeps the default plan's data scope minimal.
What happens when a provider goes down?
Nothing is sent. A failed, empty or non-calendar response is treated as missing data rather than as an empty calendar, the feed is paused, and we try again on schedule.
How are webhooks authenticated?
Each delivery is signed with HMAC-SHA256 over the timestamp and the raw body, and sent in the X-Hub-Signature-256 header as t=<unix>,v1=<hex digest>. Your receiver recomputes the digest and rejects timestamps older than five minutes, which is what closes the replay window.
Can I sign in with Google or GitHub?
Yes. Email sign-up works too, with a one-time code sent to your phone or email to verify the account.
Move the polling out of your stack.
Create a project, register one feed, and watch the first signed JSON delta land. Free for your first 300 feeds, no card required.