Automating Pool Bed Reservations at a Private Members Club

How I built a bot that guarantees I always get a pool bed ๐Ÿ˜Ž

MC

Michael Cummings

June 18, 2025 ยท 2 min read

A perfect summer afternoon by a rooftop pool in Chicago's West Loop.
A perfect summer afternoon by a rooftop pool in Chicago's West Loop.

This summer, I developed a very effective solution to a problem I kept running into.

I belong to a club in Chicago that has a rooftop pool. Most of the pool beds are first-come-first-served, but they set aside 10 beds to be booked via a mobile app.

You can try to walk-in and get a bed, but on a warm summer day in Chicago, it's very competitive. I don't like standing around waiting for a bed to open up; I'd rather have one reserved in advance.

Reservations open up 24 hours in advance. And when I say you have to be fast โ€” I mean fast. The beds get booked in seconds.

After losing the race a few too many times, I decided to automate it.

Understanding the System

The mobile app talks to a backend API to check availability and create reservations.

So the plan was simple:

  1. Observe the network traffic
  2. Reverse engineer the API
  3. Replicate the reservation request
  4. Trigger it exactly when reservations open

I started by intercepting requests from the mobile app and mapping out the endpoints involved in:

  • checking availability
  • creating reservations

Once I understood the request structure, replicating it was straightforward.

The Bot

The bot starts attempting to book a few seconds before reservations open. The moment beds become available, it fires the reservation request.

Because the API accepts reservations immediately once availability flips, the bot consistently books before humans can even load the page in the app.

The result: I have never missed a reservation since.

Turning it into an iOS App

Originally this was a simple Python script.

But eventually I wrapped the functionality in a native iOS app written in Swift so I could run it on the go, without needing my laptop.

The app runs the same logic, with the addition of a user-friendly UI.

Conclusion

Is this overkill for reserving a pool bed? Maybe...

But it was worth it ๐Ÿ˜„

automationreverse engineeringswiftiosbotsapipython

MC

Michael Cummings