Key features & changes in Reporting API v6 from API v51

With the release of adCenter API v6, we have introduced some key features like new report types, bulk report generation etc. This post highlights these new features as well as some differences from the adCenter API v51.

Bulk Report Generation:

In adCenter API v6, we are introducing two new features in the Reporting Service to facilitate the bulk download of reports. Before API v6, we restricted a user to calling a maximum of 10 adCenter accounts in one call. With API v6, the limit is increased to 300 for accounts per call. Additionally, with the API v6 we are introducing the notion of null accounts, where if the AccountIds element is NULL, all accounts are returned for all customers that are registered to the account that is making the call. Hence SMB resellers are potentially not required to make multiple calls in order to retrieve their reporting data. Instead, they can use NULL Account Ids to get report data for all customers.

Here is the batch size of different fields within scope object:

Type

Size

Description

Maximum allowed Accounts for BudgetSummaryReport

50

Only valid for Budget Summary Report.

Max Accounts for any other reports

300

Valid for all other reports where Accounts is allowed in report scope, except Budget Summary.

Maximum allowed campaigns

300

Valid for reports where Campaigns is allowed in report scope.

Maximum allowed Ad Group

300

Valid for reports where Ad Groups is allowed in report scope.

Maximum allowed Behavioral filter

300

Valid for Behavioral Target and Behavioral Performance Report.

Maximum allowed Site filter

300

Valid for Site Bidding Performance Report.

Recommendation: We encourage API users to use account limit of 300, instead of making individual API calls. SMB Resellersif you have more than 10K account, check with us before using Null AccountIds.

New Reports:

We have added support for 4 new report types. Users can now query the adCenter reporting API for these additional reports:

Rich Media Ad Type:

We have added support for Rich Media as a new Ad Type. The Ad Type value set is used as a set of flags. You can combine the values via the OR operator when setting an element of the AdTypeReportFilter data type.

Ability to return parent ids for each report:

For example with the AdGroupPerformanceReport, we will return Parent Campaign ID for the associated Ad Group ID. This is true for all reports.

Error Codes:

With API v6, we have added string error codes to all of our error types. This includes both OperationError and BatchError data types.

ProductName column:

ProductName column is deprecated from all our API reports.

Changes to Error handling:

With API v6, all authentication and quota failures will be returned as an object type FaultException<AdApiFaultDetail>, while any other user or system error will be returned as FaultException<ApiFaultDetail>. All adCenter API-enabled customers should catch both of these error types in their application. In adCenter API v5.1, we always returned FaultException of type ApiFaultDetail.

New API names:

In order for us to have industry parity and consistency within the Ad Platform, we have renamed our APIs. Please look at our MSDN Documentation and generated WSDLs for a more in depth explanation.

Old API Name

New API Name

QueueReport

SubmitGenerateReport

GetReportStatus

PollGenerateReport