It's hard for me to explain as simply as I'd like. It means that the data returned is not JSON. The JSON parse fails because, when I've seen this, it's html. html isn't json so trying to interpret it as json, fails. So the data being returned is a web page, when I saw it. It was a web page that basically said, please login.
They come in pairs, yes. It fails to parse, one error, and then the empty result is trying to find a value in the empty result, error two.
I have no idea why, because Honeywell is quite opaque on this API. It may just be the latest iteration of bandwidth limiting.