¿Proceso de cambio de API?

I’ve run into the same kind of breakage, but I went down a different path. Instead of consuming the calendar API endpoints directly, my importer builds [event] BBCode and posts it into Discourse, letting the plugin parse it as if a staff user had created the event by hand. That way I avoid depending on transient query parameters like include_expired, and I get a more stable contract — plain posts and BBCode are unlikely to change without notice.

[event start="2025-09-29 09:00" end="2025-10-29 10:00" location="Office B1"]
Meet to discuss Discourse RESTful API
[/event]

The trade-off is more work on my end: I had to write a formatter that converts ICS data into properly escaped [event] tags, handles all-day versus timed events, and so on. But in practice this approach has been far more resilient across upgrades. It doesn’t remove the need for upstream deprecation notices (I’d still like APIs to fail fast or at least warn when options are removed), yet it has reduced the risk of my scripts breaking silently.

4 Me gusta