Screen statuses gain is_online, and screens with nothing scheduled no longer report Inactive

Improvement API Breaking change

Screen statuses on API v4.1 now include is_online, true when a screen has pinged or reported in the last four hours, and you can filter on it directly instead of inferring reachability from a status string or a heartbeat timestamp.

The status value itself also changed, on both v4 and v4.1. A screen that is reachable and in sync but has nothing scheduled used to report Inactive. It now reports Online. Nothing else about the field changed: Out of sync, Offline and the rest behave as they did.

If this affects you: an integration that reads status == "Inactive" to find screens with nothing to play will now find none of them. Check for an empty playlist directly rather than reading it off the status, and use is_online where you want reachability.