Okay to poll for device changes every 10-15 seconds?

We want to detect devices coming online while they’re still doing their initial download of the application code so we can show users the download progress in our web app.

The obvious approach is to poll the fleet’s list of devices and check the is_online and download_progress values. To keep the requests efficient, we’d add a filter criterion to only return devices with modified_time values greater than the previous time we polled (minus a fuzz factor to account for clock skew) and we’d include a $select parameter to only fetch the fields we care about.

I’ve seen a few discussions on rate limits here, but they seem more focused on occasional rapid bursts of requests rather than continuous periodic requests.

If our back end polls the device list with modified_time and belongs_to__application filters and an explicit list of fields every 10-15 seconds all day long, are we going to run into rate limits? Alternately, is there a better way to discover when new devices appear in the fleet or existing ones change state?

Hi @sgrimm, if I’m understanding correctly you would be making a single request to the device resource every 10-15 seconds right? If that’s the case I don’t think you have you worry about rate limiting, I don’t have the number, but IIRC is higher than what you’ll be making. The best way is to test though, if you run into any issues you can always reach back and we can try to help you make your requests more efficient.