I run a multi-tenant booking app for Square Appointments sellers — each connects their own account via OAuth, and we add sellers weekly.
The limit is per application, so every new seller eats into the same budget — we now get RATE_LIMITED on Bookings.SearchAvailability about once a day, and it will get worse.
We’ve done the obvious work: caching, de-duping concurrent calls, capped concurrency, backoff with jitter. That buys headroom, not growth.
-
So: is running several OAuth applications to spread the load an accepted way to scale here, or something you’d rather we didn’t do?
-
Can we request a higher limit? We’d rather not split across OAuth apps — that forces every seller to re-authorize.
-
We call SearchAvailability once per team member to find who performs a service. Can we pass all ids in team_member_id_filter.any and read team_member_id from appointment_segments?
Thanks.