hippo++ but I think you sold yourself short by not pointing out the most important part of your SSCCE:
Without knowing the what the REST API actually returned, it would be difficult for any monk here to help out. I would also suggest:
and check the response code against the documentation. It would not be odd for an API to return a non-successful code with no body or a blank body -- which would be unparseable.
My own approach to APIs is to always try doing it with curl first. Sure setting headers and json bodies with curl can be a bit daunting but using curl via the command line is a great way to explore and/or debug a REST api.