Hi Anurag,
Thank you for reaching out to Google Ads API support with your question. Adding a segment to your query divides rows so you potentially get more rows. An example in your query is you use segments.date, this divides your row with all dates combined from 7/8 to 9/6 into a separate row for each day. The same is true when you segment by city, each city potentially gets its own row.
When it comes to unexpected report results, this support channel can only support the discrepancies between API reports and UI reports. For any other issues with unexpected report results I suggest you reach out to our
product support team for further assistance. The Ads API can only be a conduit to the Ads product as expressed in the Ads UI.
In light of the above, to assist you further, could you send us a 'DEBUG' log level request and response log of raw API communications of an API report that differs from a UI report? Note that the UI report needs to match the resource level off the API report (here's a list of
Predefined Reports), have the same fields in 'row columns' that the API report has in segmenting columns and the filters have to be the same. Also, both reports have to be pulled in the same time frame due to issues with
data freshness.
The request and response appears similar to the
JSON Mappings in our REST documentation with additional headers and information such as
request Id. Here are logging instructions for our
Java,
.NET,
PHP,
Python,
Ruby and
Perl Ads API Client Libraries.
If you are using our
REST interface then the full multi line curl command line is a request log and adding curl command line option '-i' will also generate a response log.
You may send the requested information via "Reply to author" or via
googleadsa...@google.com with a link to this forum post added to the new thread.
Regards,
 |
| Aryeh |
| Google Ads API Team |
|
|
| |

ref:_00D1U1174p._5004Q2eQPRe:ref