facebook-sdk
facebook-sdk copied to clipboard
JSON-encode post args that are python dicts
Certain write operations in the Facebook API require post arguments that are JSON objects. Example: adgroup creation in the ads API (https://developers.facebook.com/docs/reference/ads-api/adgroup/#create) which expects certain objects such as conversion_specs, targeting, and tracking_specs.
When using put_object, if one passes a python dict as one of these arguments the call will fail with a "malformed JSON" or similar message. I got around it by doing a json.dumps() on each before passing them to put_object.
Don't know if the the library should handle this encoding or if it's out of scope, but FYI.
#108 describes a similar issue to this. As I wrote in the comments there, I think changing the library to use Python dictionaries directly (instead of args and kwargs) makes sense.