Background Memory Limits for EXIT() and SETVALUE()

I'm writing a field that requires a significant data set I get from a WebRequest.

I've reduced the code in my background processes so I no longer get the dreaded -403 HTTP error.

But now I've tried to pass the dictionary of the retrieved JSON data in Background.exit(data) and I get an error that the size being passed to exit() is too large. I see from the API docs that EXIT() has an 8KB limit. I'm not sure how to check the storage size of a dictionary. Any ideas? View Memory in the sim doesn't show it.

I've also tried Storage.setValue("data",data), but that also runs out of memory. Any way to check how much space is available in the Object Store?

I might have to resort to sending some of the data using EXIT() and the rest using SETVALUE(). To split up the payload to get all the data to my foreground.