Use time range in Ad Insights of Facebook Marketing API

I can't comment on the approach you're using as I have not used it myself. However, here is an alternative approach which I have used with success:<yourLevel>&fields=ad_id,ad_name,impressions&time_range[since]=2016-02-15&time_range[until]=2016-02-16&limit=25

where <yourLevel> can be one of: ad, adset, campaign

Also note that I am using straight up http requests in java which is why I show you the request itself. Hopefully you can extrapolate to your own solution.

Using the same endpoint you've shown in your question


The way to specify a time range would be


(of course, those two dates are provided just as an example)

Easiest way of doing this is


Remove .time_increment(1) if you don't want day by day data

you can use {} for subfields like


you can use . and () for parameters like; always make sure you use you use fields only after parameters like this order .(){}