Question: What is the proper way to save parse objects locally? I placed them in an NSMutableDictionary and tried saving them with NSUserDefaults but that failed with this error, "Attempt to set a non-property-list object as an NSUserDefaults value".

I want to upload my object to Parse and save locally too. Kind of like caching it. I know that parse offers query caching but I need to cache when uploading too, not just when querying.

If it makes a difference, the items inside my pfobject are strings and piffles (images).

I would appreciate if somebody could point me in the right direction.

Answer: 
parse has added this feature on 9th December for iOS
 <http://blog.parse.com/2014/12/09/parse-local-datastore-for-ios/>
There's no proper way to do this right now. Local Data Store was added to Android on 4/30/2014 and will be arriving for iOS at some point soon.

You should not do this, because it could definitely break after a new SDK release, but I did find a hacky way to do this until then... <https://gist.github.com/gfosco/ac6b5ebb42791ced0932>