Great question — answering as the UphillTech team:
As the error posted by bjeavons shows, there needs to be a certain minimal people in your targeting. If your targeting audience is too small, for example a specific interest in a too small/little populated area, you can't create the targeting. I performed the following call (note the API version and that bid info and targeting are now required on Ad Set level instead) curl -v \ -F 'campaign_group_id=<adcampaign_id>' \ -F 'targeting={"geo_locations":{"custom_locations":[{"distance_unit":"kilometer","latitude":35.933333,"longitude":0.083333,"radius":50}]},"interests":[{"id":"6003252179711","name":"Engineering"}]}' \ -F 'name=My Adset' \ -F 'bid_info={"ACTIONS":50}' \ -F 'end_time=4/20/2015' \...
Full answer by Roemer: https://stackoverflow.stackexchange.com/a/29344956 (CC BY-SA 3.0).
Need it done for your business? UphillTech.