The issue is that data is a "byte" type, not a dict. I also can't call request.json or request.get_json(silent=True), it returns "400 bad request".

Here is a sample of what is in request.data:

b'sess_id=1&annotations%5B0%5D%5Btag_start%5D=2...

it appears to be url encoded for some reason. Values is also empty. If I choose to do something wild, like leave out the content-type = json; I can get a dict-like thing, but I have to access it very oddly. I don't get individual objects, but rather just flat access to all properties.

Any thoughts on how to just get the json parsed into a reasonable object?