From my testing, the API appears to return the following:
User with no bazaar / no stock
{ "bazaar_timestamp": 1780834726, "bazaar_delay": 30, "bazaar_is_open": true, "bazaar": [] }
User with an active bazaar and stock
{ "bazaar_is_open": true, "bazaar": [ ... ] }
User with a closed bazaar
{ "bazaar_timestamp": 1780835051, "bazaar_delay": 30, "bazaar_is_open": false, "bazaar": [] }
What is confusing is that a user who has never owned a bazaar appears to return:
"bazaar_is_open": true
despite having an empty bazaar array.
Is this expected behaviour, where bazaar_is_open simply reflects an "open" state regardless of whether a bazaar exists or contains stock, or is this a bug in the API response?
At the moment, a user with no bazaar and a user with an open bazaar containing zero stock appear to return identical data, making it impossible to reliably distinguish between the two scenarios using bazaar_is_open alone.