Samples for the Content API for Shopping and Manufacturer Center API
These code samples are organized by platform or language. Each language
directory contains a
README with more information about how to run the
samples for that particular language. Here, we cover setting up
authentication and the common configuration file used by all the samples.
Choose Your Method of Authentication
Before getting started, check the Getting Started section of the Content API for Shopping documentation. You may want to use service accounts instead to simplify the authentication flow. These samples also support using Google Application Default Credentials.
Setting up authentication for the Manufacturer Center API is similar to the Content API. Just make sure to select the Manufacturer Center API in the API Console. Both APIs can be selected if you wish to try samples for both APIs.
Setting up Authentication and Sample Configuration
Create the directory
$(HOME)/shopping-samplesto store the configuration.
If you are unsure where this will be located in your particular setup, then run the samples (following the language-specific
README). Errors from the samples related to either this directory or necessary files not existing will provide the full path to the expected directory/files.
Within this directory, also create the following subdirectories, depending on which API you would like to try:
contentfor the Content API for Shopping
manufacturersfor the Manufacturer Center API
Place the files described below in the appropriate subdirectory for the API you want to try.
Set up your desired authentication method.
If you are using Google Application Default Credentials:
- Follow the directions on the Google Application Default Credentials page.
If you are using a service account:
- Put the JSON file you downloaded when creating the service account to
service-account.jsonin the appropriate API configuration subdirectories.
If you are using an OAuth2 client ID:
Download your OAuth2 client credentials to the file
client-secrets.jsonin the appropriate API configuration subdirectories.
Note: The samples assume that you are using an OAuth2 client ID that can use a loopback IP address to retrieve tokens. If you are not or are unsure that you are, please visit the [OAuth2.0 for Mobile & Desktop Apps] (https://developers.google.com/identity/protocols/OAuth2InstalledApp) page and follow the instructions there to create a new OAuth2 client ID to use with the samples.
You can set up multiple authentication methods to try out different flows, but note that the samples will always use the first credentials that can be loaded, in the order:
Each set of samples uses a different configuration file. For the Content API for Shopping, take the example
merchant-info.jsonfrom the repository root and copy it into
$(HOME)/shopping-samples/content. Next, change its contents appropriately. It contains a JSON object with the following fields:
Field Type Description
number The Merchant Center ID to run samples against.
string If non-empty, the email address for the user to add/remove in samples for the
number If non-zero, the AdWords Customer ID to link/unlink in samples for the
For the Manufacturer Center API, take the example
manufacturer-info.jsonfrom the repository root and copy it into
$(HOME)/shopping-samples/manufacturers. Next, change its contents appropriately. It contains a JSON object with the following fields:
Field Type Description
number The Manufacturer Center ID to run samples against.
string The URL (without trailing slash) associated with the Manufacturer Center account.
If using OAuth2 client credentials, once you have authorized access, your token details will be stored in the
stored-token.jsonfile in the samples configuration directory. If you have any issues authenticating, remove this file and you will be asked to re-authorize access.
Try Out the Samples
Now that you've configured both the common sample configuration file and set up
your authentication credentials, it's time to build and run any of the included
samples. As mentioned before, there are language-specific instructions in
READMEs located in each language subdirectory.
- When using the Content API for Shopping, if you haven't set up tax settings on your account, you may get an error when running certain samples. If you receive a "missing tax settings" error, set your tax settings in the Merchant Center before trying these samples. Selecting the "Don't charge taxes in the United States" setting is sufficient.