Inconsistent handling of JSON string responses in makeWebrequest

Connect IQ’s makeWebRequest does not accept valid top-level JSON string responses when HTTP_RESPONSE_CONTENT_TYPE_JSON is used. The bug is documented here:

A possible workaround is to set RESPONSE_TYPE to plain text. This works on some devices, but many return HTTP error -400 when the response’s Content-Type header does not match the requested type, making the workaround unreliable.

I need to determine which devices and Connect IQ versions can accept a JSON response when PLAIN_TEXT is specified. Unfortunately, the simulator always accepts this combination, while physical devices may return -400. This makes it difficult to test compatibility and define which Connect IQ versions the app can support.

Has anyone found a reliable way to identify compatible devices or versions, detect this behavior at runtime, or implement an effective fallback?

The Garmin Connect IQ team has not yet addressed the reported bug, so I’m looking for a practical workaround.

Thanks! /Fredrik