How to download named report C#

633 views
Skip to first unread message

road11

unread,
Jul 16, 2012, 2:48:00 PM7/16/12
to adwor...@googlegroups.com, eric...@belnickinc.com
Using the C# v201109_1 code samples as a model, I'm trying to download one of our many previously defined and named reports. Here's the code that Google gave us to get our report definitions that isn't working (assuming a valid AdwordsUser object)...


      ReportDefinitionService reportDefinitionService = (ReportDefinitionService) user.GetService(
          AdWordsService.v201109_1.ReportDefinitionService);
 
      // Create the selector.
      ReportDefinitionSelector selector = new ReportDefinitionSelector();
 
      try {
        // Get all report definitions.
        ReportDefinitionPage page = reportDefinitionService.get(selector);
 
        // Display report definitions.
        if (page != null && page.entries != null && page.entries.Length > 0) {
          foreach (ReportDefinition reportDefinition in page.entries) {
            writer.WriteLine("ReportDefinition with name \"{0}\" and id \"{1}\" was found.",
                reportDefinition.reportName, reportDefinition.id);
          }
        } else {
          writer.WriteLine("No report definitions were found.");
        }
 
      } catch (Exception ex) {
        throw new System.ApplicationException("Failed to retrieve report definitions.", ex);
      }

...however, this code keeps telling me that page.entries is null. We've got at least 1400 named reports defined in this Google Adwords account. How is it possible that this code can find none of them? I thought the selector might be the problem, but the ReportDefinitionSelector doesn't even have a fields property, so that can't be the issue. 

I would be most grateful if someone could post a (working) C# example of how to get a list of available reports and how to download a single named report from an Adwords account.

Thank you in advance.

Dorian Kind

unread,
Jul 17, 2012, 7:16:07 AM7/17/12
to adwor...@googlegroups.com, eric...@belnickinc.com
You probably know this, but if the reports were originally defined in the UI, they will not be available via the API. Apart from that, I can't offer any help but I'd recommend using ad hoc reports instead of the ReportDefinitionService (which will be deprecated anyway).

Cheers

road11

unread,
Jul 17, 2012, 8:11:04 AM7/17/12
to adwor...@googlegroups.com, eric...@belnickinc.com
Thank you, Dorian. No, I didn't know that. I've been slinging Microsoft code for nearly 20 years, but still relatively new to the Adwords API with .Net. So I have to create an ad-hoc report with C# and then I can call it by it's id? Might you know of some C# examples where I can see where you do this?

Thanks in advance for your kind response.

Eric

Dorian Kind

unread,
Jul 18, 2012, 6:05:16 AM7/18/12
to adwor...@googlegroups.com, eric...@belnickinc.com
Hi Eric,

I have absolutely zero knowledge of C#, but this link might help you to get a general idea about ad hoc reports: <https://developers.google.com/adwords/api/docs/guides/reporting>
It's basically a synchronous HTTP request with your report definition as data, returning the desired report.

Hope this helps,
Dorian

Kevin Winter

unread,
Jul 24, 2012, 4:50:05 PM7/24/12
to adwor...@googlegroups.com, eric...@belnickinc.com
Hi Eric,
  Here's the DotNet client library example for downloading a Criteria Report via AdHoc reports: http://code.google.com/p/google-api-adwords-dotnet/source/browse/trunk/examples/adwords/csharp/v201206/Reporting/DownloadCriteriaReport.cs

Please note that you can optionally use AWQL to download reports now too (which is even easier): https://developers.google.com/adwords/api/docs/guides/awql

- Kevin Winter
AdWords API Team

Ro

unread,
Aug 6, 2012, 4:20:46 PM8/6/12
to adwor...@googlegroups.com, eric...@belnickinc.com
Hey Kevin,

I saw in the example that there is a use of ReportDefinition - If I use this object it still free (rate wise) as the adhoc reports?

Isn't it a part of the ReportDefinitionService, which soon will be shut off?  

Looking forward for your reply!

Best,

Ro

Kevin Winter

unread,
Aug 7, 2012, 1:51:27 PM8/7/12
to adwor...@googlegroups.com, eric...@belnickinc.com
Hi Ro,
  Yes, the object has been removed from the WSDL, but all the client libraries have added support regardless.  Some are using a patched version from v201109_1, some are using the XSD directly (with generated classes).  If the example in the library does it that way, it should be safe to use.

- Kevin Winter
AdWords API Team

reprise...@gmail.com

unread,
Dec 19, 2017, 4:48:14 AM12/19/17
to AdWords API Forum
Is it still the case that If a report is made via UI that It wont be possible to access with the API ?

Bharani Cherukuri (AdWords API Team)

unread,
Dec 19, 2017, 2:47:19 PM12/19/17
to AdWords API Forum
Hello, 

That's right. Through the AdWords API, it is not possible to access the report generated through the web interface. You may refer to this guide on how to generate reports through the API.

Regards,
Bharani, AdWords API Team

Reply all
Reply to author
Forward
0 new messages