Case file № 002 · Integration · Automation · Publishing
Watching an app that has no API
- 24/7
- unattended, for months at a time
- 5 min
- respectful polling interval
- daily
- almanac republish, hands off
Too Good to Go surplus-food "drops" sell out in minutes and the app tells no one. I built a resident service that watches it around the clock, pings Telegram the instant a bag comes back, and publishes a daily almanac of drop patterns to the web.
The system
In
Too Good to Go closed app · no public API
The system
Python poller systemd service · rate-respectful
Observation store every state change, kept
Out
Telegram alert the moment a bag returns
The Drop Almanac republished daily, untouched
Before ✗
- Bags appear and sell out in minutes; the only way to catch one was to obsessively refresh the app.
- No public API, no notifications worth the name, no history of when stores actually drop.
After ✓
- A small Python service runs continuously on a Linux box under systemd, polling favorites at a respectful interval.
- The moment a bag flips from sold-out to available, a Telegram message lands.
- Every observation is stored, and a daily timer republishes “The Drop Almanac” — a website of when each store actually drops.
The verdict
This is what integration work looks like when there is no integration: observe a closed system, store what it does, and turn it into a public, self-updating publication — hands off, every day.
Bill of materials
| Python | the watcher: poll, diff, decide |
|---|---|
| systemd | keeps it alive; timers run the day |
| Telegram Bot API | alerts that arrive in seconds |
| Cloudflare Pages | the almanac, published every morning |