Stay organized with collections
Save and categorize content based on your preferences.
This document is for developers who want to use the AdSense Management API to get
information about their AdSense account. This document assumes that you're
familiar with web programming concepts and web data formats.
In the Client Libraries and Samples
page, you'll find information on the available libraries and samples. Click
the tab for your chosen language and follow the links to download the source.
The client libraries handle the following for you:
authentication
discovery of services
building the requests to the API
response parsing
Read the instructions to install and configure your chosen client library,
typically found in the README file in the root directory of the repository.
If your implementation has special needs, such as using an unsupported
language, you can make direct
requests to the API instead of using a client library.
Register your application
To use the AdSense Management API you must register the application you're developing
by creating a project and generating a Client ID.
Edit the configuration files for your client library project with the new
credentials you just created. Check the client library documentation for more
details.
Note: The Google Account used for registration should be
your developer account, that is, the account that you want users of your
application to see as the developer of the application. This account does
not need to be tied to an AdSense login, as users will be granting access
to their own accounts while using the application.
Quick start tutorial
Follow the steps below to make your first requests, note that these steps
may vary slightly depending on the library or language you are using:
Use the appropriate sample to retrieve a list of ad clients from an
AdSense account. This request initiates a one-time process in which the
AdSense user authenticates and authorizes your project.
Ad clients represent an association between an
AdSense account and an AdSense product, such as Content Ads or Search Ads.
An AdSense account can have one or multiple ad clients.
For web applications, users will be redirected to a site where
they can choose to grant access. Once authorized, they will be redirected
to the callback URL defined in the Google API Console.
Installed applications work similarly. The client library will
try to open a browser window and use an authorization code. For Android,
Chrome and iOS applications this method is platform-specific.
Reports give you insight into what you're earning,
as well as what's having an impact on those earnings. They can be run on
an entire account or on a subset of ad units, through the use of
channels.
Try to request the same report from your application.
You can filter the reports by ad units. Fetch the list of ad units using
adunits.list.
Note that an ad client ID is needed (get it from step 1). After you choose
an ad unit, use its ID in the
filter parameter for
reports.generate:
Ad Units are user-configured placeholders for ads,
that define some properties for the ads being shown (such as size and
shape).
date_range: YESTERDAY
dimensions: DATE
metrics: ESTIMATED_EARNINGS
filter: AD_UNIT_ID==ca-pub-123456789:987654321
Try filtering by custom or URL channels or mixing multiple filters.
Channels are tools that let you track the
performance of a subset of your ad units. There are two types of channels:
URL and custom. The former lets you track performance across a specific
page or domain, whereas the latter help you track performance on specific
user-selected groups of ad units.
You are ready to start your implementation by exploring the rest of the
available calls and resources in the reference
documentation.
[[["Easy to understand","easyToUnderstand","thumb-up"],["Solved my problem","solvedMyProblem","thumb-up"],["Other","otherUp","thumb-up"]],[["Missing the information I need","missingTheInformationINeed","thumb-down"],["Too complicated / too many steps","tooComplicatedTooManySteps","thumb-down"],["Out of date","outOfDate","thumb-down"],["Samples / code issue","samplesCodeIssue","thumb-down"],["Other","otherDown","thumb-down"]],["Last updated 2025-06-17 UTC."],[[["\u003cp\u003eStarts ADH import of a specified BigQuery table containing a quarterly brand lift benchmark report, triggered by the customer.\u003c/p\u003e\n"],["\u003cp\u003eRequires specifying the year, quarter, and source BigQuery table in the request body.\u003c/p\u003e\n"],["\u003cp\u003eUses POST request to \u003ccode\u003ehttps://adsdatahub.googleapis.com/v1/{customer=customers/*}:submitBrandLiftBenchmark\u003c/code\u003e.\u003c/p\u003e\n"],["\u003cp\u003eNeeds \u003ccode\u003ehttps://www.googleapis.com/auth/adsdatahub\u003c/code\u003e authorization scope.\u003c/p\u003e\n"],["\u003cp\u003eReturns an Operation object upon successful submission.\u003c/p\u003e\n"]]],["To use the AdSense Management API, first, obtain an AdSense account and familiarize yourself with it. Select a client library or make direct API requests. Register your application to get a Client ID, and configure your project with the credentials. Retrieve a list of ad clients, then generate reports using the API explorer or your application. Filter reports by ad units or channels, and explore the API reference documentation to start implementing your code.\n"],null,["# Get Started\n\nThis document is for developers who want to use the AdSense Management API to get\ninformation about their AdSense account. This document assumes that you're\nfamiliar with web programming concepts and web data formats.\n\nBefore you start\n----------------\n\n### Get an AdSense account\n\nSign up or sign in to your [AdSense\naccount](//adsense.google.com/) to get started.\n\n### Get familiar with AdSense\n\nIf you're not familiar with AdSense concepts read the [introductory information on AdSense](//support.google.com/adsense)\nand experiment with the [AdSense UI](//adsense.google.com/)\nbefore starting to code.\n\n### Choose your client library\n\nIn the [Client Libraries and Samples\npage](/adsense/management/libraries), you'll find information on the available libraries and samples. Click\nthe tab for your chosen language and follow the links to download the source.\nThe client libraries handle the following for you:\n\n- authentication\n- discovery of services\n- building the requests to the API\n- response parsing\n\nRead the instructions to install and configure your chosen client library,\ntypically found in the README file in the root directory of the repository.\n\nIf your implementation has special needs, such as using an unsupported\nlanguage, you can [make direct\nrequests](/adsense/management/direct_requests) to the API instead of using a client library.\n\nRegister your application\n-------------------------\n\nTo use the AdSense Management API you must register the application you're developing\nby creating a project and generating a Client ID.\nRegister your app\n\nEdit the configuration files for your client library project with the new\ncredentials you just created. Check the client library documentation for more\ndetails.\n\n**Note:** The Google Account used for registration should be\nyour **developer** account, that is, the account that you want users of your\napplication to see as the developer of the application. **This account does\nnot need to be tied to an AdSense login**, as users will be granting access\nto their own accounts while using the application.\n\nQuick start tutorial\n--------------------\n\nFollow the steps below to make your first requests, note that these steps\nmay vary slightly depending on the library or language you are using:\n\n1. Use the appropriate sample to retrieve a list of ad clients from an AdSense account. This request initiates a one-time process in which the AdSense user authenticates and authorizes your project. **Ad clients** represent an association between an\n AdSense account and an AdSense product, such as Content Ads or Search Ads.\n An AdSense account can have one or multiple ad clients.\n\n 1. For **web applications**, users will be redirected to a site where they can choose to grant access. Once authorized, they will be redirected to the callback URL defined in the Google API Console.\n 2. **Installed applications** work similarly. The client library will try to open a browser window and use an authorization code. For Android, Chrome and iOS applications this method is platform-specific.\n2. Use the [Google APIs explorer for\n `reports.generate`](/adsense/management/reference/rest/v2/accounts.reports/generate) to request the following report:\n - `date_range: YESTERDAY`\n - `dimensions: DATE`\n - `metrics: ESTIMATED_EARNINGS`\n\n **Reports** give you insight into what you're earning,\n as well as what's having an impact on those earnings. They can be run on\n an entire account or on a subset of ad units, through the use of\n channels.\n3. Try to request the same report from your application.\n4. You can filter the reports by ad units. Fetch the list of ad units using [adunits.list](/adsense/management/reference/rest/v2/accounts.adclients.adunits/list). Note that an ad client ID is needed (get it from step 1). After you choose an ad unit, use its ID in the [filter](/adsense/management/reporting/filtering) parameter for `reports.generate`:\n\n **Ad Units** are user-configured placeholders for ads,\n that define some properties for the ads being shown (such as size and\n shape).\n - `date_range: YESTERDAY`\n - `dimensions: DATE`\n - `metrics: ESTIMATED_EARNINGS`\n - `filter: AD_UNIT_ID==ca-pub-123456789:987654321`\n5. Try filtering by custom or URL channels or mixing multiple filters. **Channels** are tools that let you track the\n performance of a subset of your ad units. There are two types of channels:\n URL and custom. The former lets you track performance across a specific\n page or domain, whereas the latter help you track performance on specific\n user-selected groups of ad units.\n\nYou are ready to start your implementation by exploring the rest of the\navailable calls and resources in the [reference\ndocumentation](/adsense/management/reference/rest)."]]