Posted:
Starting on September 14th, 2016, Productstatuses will return all the errors and warnings present in the Diagnostics tab of Merchant Center. To explain the changes, first we separate errors and warnings for products into two categories:
  • Validation issues are reported as a result of product insertion and update, and they include issues such as missing required fields or invalid item IDs.
  • Data quality issues are reported later after either automatic or manual review of the data provided to Merchant Center, and they include issues such as product images being too generic or a non-matching price on the landing page.
Historically, only data quality issues were available from Productstatuses, while validation issues required the developer to check the returned status from the insertion or update of the product. After this change, developers can retrieve both data quality and validation issues using Productstatuses, but this means that developers may see more issues returned by Productstatuses than before.

Please note that the includeInvalidInsertedItems URL parameter to Productstatuses.list still defaults to false. This means that, by default, calls only retrieve products which had no validation errors, and thus the retrieved products will only include data quality issues and validation warnings (if any). If you want to retrieve information about products with validation errors, please set this parameter to true.

If you have any questions or feedback about the changes to issue reporting or other questions about the Content API for Shopping, please let us know on the forum.

Posted:
We’ve launched a new Shippingsettings service which supports the new shipping settings in Merchant Center. This service replaces the old Accountshipping service, which has been deprecated and will be retired March 1st, 2017.

The new service uses rate tables instead of rate trees to describe complex rate systems, and also supports retrieving the available shipping services. Check out the updated Account-level Tax and Shipping guide and reference documentation if you're interested in what the new service looks like!

A note to users of Accountshipping: you can retrieve settings uploaded via Accountshipping through Shippingsettings, but not vice versa. Thus, if you currently have shipping settings, you can see what your current settings would look like in the new format expected by Shippingsettings by retrieving them using the new service.

If you're migrating from Accountshipping, we suggest you either first experiment with Shippingsettings on another Merchant Center account used for testing, or keep the code to upload settings via Accountshipping around until you're sure your new Shippingsettings code behaves as expected.

If you have any questions or feedback on the Shippingsettings service or other questions about the Content API for Shopping, please let us know on the forum.

Posted:
Adwords currently supports demographic targeting only for Display network campaigns, but starting September 19, 2016 and launching over the subsequent days, demographic targeting will also be supported for Search campaigns. All existing AdWords API versions will retroactively allow these criteria in Search campaigns.

The benefit here for AdWords API users is that AgeRange and Gender criteria will be allowed in Search campaigns. Formerly, you would receive a CriterionError.CANNOT_ADD_CRITERION_TO_SEARCH_PLUS_CAMPAIGNS error when trying to add these types.

If your application does any type of automatic bidding, make sure that you update your app to accommodate these new potential bid modifiers on Search campaigns before September 19. These new criteria may be added by users of the AdWords user interface, so your code may have to handle them even if your application doesn't add them explicitly. This may be particularly relevant if you use the "Target and bid" (targetAll=false) option in TargetingSettingDetail, because the new criteria will begin restricting targeting.

If you have any questions about this change, or other questions about the AdWords API, contact us via the forum.

Posted:

If you’re in the Northern Hemisphere like I am, then you’re probably also experiencing the sweltering heatwave we’re enjoying this summer. You know what’s a great way to beat the heat? Stay inside and upgrade your DFP API version to the other hotness: v201608. If the prospect of air-conditioning isn’t enough to draw you away from the allure of melting outside, consider the following additional enhancements!

Programmatic & Sales Manager

One of the biggest features we’re adding to the DFP API is the support for programmatic guaranteed deals. This allows you to perform the end-to-end work of defining your inventory, negotiating with buyers, and trafficking to DFP all using the same great API you know and love (ours). To see how to create and use programmatic objects, see our API guide.

In addition to programmatic guaranteed, we’ve further enhanced the ProposalLineItem object by now providing information on whether the pricing model is Gross or Net via the ProposalLineItem.rateCardPricingModel field.

Trafficking

On the trafficking front, we’ve added the ability to delineate whether or not a creative isSafeFrameCompatible for applicable creative types such as CustomCreative. We’ve also added viewability tracking event types which can now be found on the ConversionEvent object. And finally, the one you’ve all been waiting for - there’s now support for the popular Html5Creative type.

Reporting

It’s not December, but it sure feels like the holiday season. If you’ve ever wanted to run a query you had saved in the UI, the ReportService has got your back. We’ve added ReportService.getSavedQueriesByStatement, which allows you to retrieve reports you’ve created in the UI. You can then run these using ReportService.runReportJob.

Of course, since this is an action-packed release, we can’t possibly list out everything we’ve changed in a blog post, so take a peek at the full release notes.

As a reminder, with each new release comes a new deprecation (this one’s special, it’s a double deprecation!). If you're using v201511 or earlier, it's time to look into upgrading to v201608. If you have any questions about upgrading, let us know on the developer forum.

Posted:
In AdWords you could choose to optimize your automated bidding on "Converted clicks" or "Conversions." AdWords recently announced that we're saying goodbye to "Converted clicks" in favor of “Conversions,” which offers much more flexibility and measurement options. As a result, we’re updating the API.

The conversionOptimizerMode attribute of the Customer.conversionTrackingSetting allowed you to set ONE_PER_CLICK ("Converted clicks") or MANY_PER_CLICK ("Conversions") at the account level.

Starting on September 21, 2016, all AdWords accounts will be automatically migrated to set conversionOptimizerMode to MANY_PER_CLICK, and new mutate operations to change this setting will fail with RequestError.INVALID_INPUT.

Prior to September 21, 2016, ensure your CustomerService mutate requests do not attempt to modify the value of conversionOptimizerMode. You can also migrate your accounts before the migration by setting conversionOptimizerMode to MANY_PER_CLICK.

If you have any questions, please let us know on the forum.

Posted:
Starting September 26, 2016, we will be removing support for all TrueView in-search video template ads (template ID 231) from Display campaigns, and will no longer accept new ads for that template. Existing Display ads of this template ID will stop serving and be moved to the DISABLED status. This is in line with the upgrade of TrueView campaigns during the integration into AdWords.

Please note that this only affects Display campaigns, and not existing video campaigns. Historical stats for these ads will still be available in reports.

If you have any questions about this change, or other questions about the AdWords API, please contact us via the forum.

Posted:
Today we’re pleased to announce the new and revamped DFP Playground. Like the previous Playground, you can test PQL statements and examine JSON equivalents of the objects you retrieve from the DFP API. In the new DFP Playground, you can easily switch between services using a tab interface, and you can even view documentation for a particular service with a simple click of a button.

The new DFP Playground's tab-based interface is cleaner and less crowded.

Clicking a result produces a dropdown with the object’s JSON representation.

Checking out the GitHub project

The DFP Playground is available on GitHub. Reading the code should give you a good idea of best practices for interacting with the DFP API via the Google Ads Python client library in a web application environment. The process to set up your own instance of the DFP Playground and deploy it to AppEngine is documented in the README.

Feel free to post any bug reports or feature requests in the issues section. If you have any questions regarding the DFP API, please reach out to us on our forum.