# API change process?

**URL:** https://meta.discourse.org/t/api-change-process/381869
**Category:** Support
**Created:** [September 7, 2025, 4:32pm UTC](https://meta.discourse.org/t/api-change-process/381869 "2025-09-07T16:32:25Z")
**Posts on this page:** 1
**Showing post:** 1

<div class="post-metadata">

### Author: ![dubwoc](https://avatars.discourse-cdn.com/v4/letter/d/b4bc9f/32.png) [@dubwoc](https://meta.discourse.org/u/dubwoc)
#### Post date: [September 7, 2025, 4:32pm UTC](https://meta.discourse.org/t/api-change-process/381869/1 "2025-09-07T16:32:25Z")

</div>

I have been running a few discourse sites for some time now and I have a number of scripts that interact directly with some of Discourse’s APIs and I find that periodically things just stop working after an upgrade. Generally this is fine if the things are detectable immediately but when they don’t show up for a bit of time it becomes difficult to chase things down and often results in production issues rather than dev instances.

For example: [Recurring events in Upcoming Events calendar fail to handle daylight saving change](https://meta.discourse.org/t/recurring-events-in-upcoming-events-calendar-fail-to-handle-daylight-saving-change/380712)

Recently removed the include\_expired option, unfortunately the behavior of only having events returned from the calendar API that are not expired was something I relied on and it caused a number of processes to blow up at a later date after upgrading. For this particular example failing if a caller specified the now removed parameter would have at least stopped the issue in my particular script 🙂

So what I am wondering is as a downstream user of discourse what is the best way to identify API changes like this before they hit my instance? Previously I resorted to mirroring the discourse-calendar repo and upgrading it less frequently on my own time to avoid these problems, now that it is integrated I decided to drop that approach and I am being bit again.

I appreciate all the work and improvement discourse constantly goes under and I am fine if the answer is “sign up for enterprise and these things will happen less frequently,” or add more testing on your end but I wanted to see if maybe there are other options or approaches I am unaware of.

Thank you.

---

_[View the full topic](https://meta.discourse.org/t/api-change-process/381869)._
