drolbr / Overpass-API

A database engine to query the OpenStreetMap data.
http://overpass-api.de
GNU Affero General Public License v3.0
693 stars 90 forks source link

Extend the status api with one specific endpoint per information #629

Open UweKrause opened 2 years ago

UweKrause commented 2 years ago

For an application, the requesting site is interested in the available slots. Especially when making a request when there is no slot available, this request fails just after ~10 seconds with 429. If there are currently no slots available, I want to know that beforehand, so my application can wait until the next will be available. "Regexing" that information out of the api/status response is of course possible, but is another hurdle for all the app developers out there, that can be solved one time at the server side.

Proposal: Extend the status api with one specific endpoint per information: api/status/connected_as api/status/current_time (ok, this one probably is not as useful) api/status/rate_limit api/status/slots_available (0 if none) api/status/slot_available_after (Show all slots as list? Show only the next available slot?) api/status/currently_running

Instead of (or additionally to) api/status/slot_available_after maybe use two endpoints: api/status/slots_available_after for a list of all the slots available after a certain time, api/status/next_slot_available_after for the next slot.

mmd-osm commented 2 years ago

I think everyone wants the status page in machine readable format, such as JSON. Having that many additional endpoints probably adds just a bit too much complexity.

As you’re experiencing this issue, I hope you’re also considering setting up your own overpass instance where you can disable rate limiting altogether.