APIHub
Back to Explore

Ad Exchange Buyer API

The Ad Exchange Buyer API lets buyers programmatically manage their accounts, billing budgets, and creatives, and retrieve performance reports. It also provides endpoints for marketplace operations such as creating and updating proposals, deals, notes, pre‑targeting configurations, private‑auction proposals, product queries, and publisher profiles.

Analytics
OAuth
HTTPS
CORS: Unknown
Description enriched
Visit official documentation

Latency

6787ms p95

Uptime

100.0% 30d

Playground

Verified

live

Endpoints

REST · JSON
GET

/accounts

Retrieves the authenticated user's list of accounts.

GET

/accounts/{id}

Gets one account by ID.

  • id (path, required) — The account id
PATCH

/accounts/{id}

Updates an existing account. This method supports patch semantics.

  • id (path, required) — The account id
  • confirmUnsafeAccountChange (query) — Confirmation for erasing bidder and cookie matching urls.
PUT

/accounts/{id}

Updates an existing account.

  • id (path, required) — The account id
  • confirmUnsafeAccountChange (query) — Confirmation for erasing bidder and cookie matching urls.
GET

/billinginfo

Retrieves a list of billing information for all accounts of the authenticated user.

GET

/billinginfo/{accountId}

Returns the billing information for one account specified by account ID.

  • accountId (path, required) — The account id.
GET

/billinginfo/{accountId}/{billingId}

Returns the budget information for the adgroup specified by the accountId and billingId.

  • accountId (path, required) — The account id to get the budget information for.
  • billingId (path, required) — The billing id to get the budget information for.
PATCH

/billinginfo/{accountId}/{billingId}

Updates the budget amount for the budget of the adgroup specified by the accountId and billingId, with the budget amount in the request. This method supports patch semantics.

  • accountId (path, required) — The account id associated with the budget being updated.
  • billingId (path, required) — The billing id associated with the budget being updated.
PUT

/billinginfo/{accountId}/{billingId}

Updates the budget amount for the budget of the adgroup specified by the accountId and billingId, with the budget amount in the request.

  • accountId (path, required) — The account id associated with the budget being updated.
  • billingId (path, required) — The billing id associated with the budget being updated.
GET

/creatives

Retrieves a list of the authenticated user's active creatives. A creative will be available 30-40 minutes after submission.

  • accountId (query) — When specified, only creatives for the given account ids are returned.
  • buyerCreativeId (query) — When specified, only creatives for the given buyer creative ids are returned.
  • dealsStatusFilter (query) — When specified, only creatives having the given deals status are returned.
  • maxResults (query, limit) — Maximum number of entries returned on one result page. If not set, the default is 100. Optional.
  • openAuctionStatusFilter (query) — When specified, only creatives having the given open auction status are returned.
  • pageToken (query) — A continuation token, used to page through ad clients. To retrieve the next page, set this parameter to the value of "nextPageToken" from the previous response. Optional.
POST

/creatives

Submit a new creative.

GET

/creatives/{accountId}/{buyerCreativeId}

Gets the status for a single creative. A creative will be available 30-40 minutes after submission.

  • accountId (path, required) — The id for the account that will serve this creative.
  • buyerCreativeId (path, required) — The buyer-specific id for this creative.
POST

/creatives/{accountId}/{buyerCreativeId}/addDeal/{dealId}

Add a deal id association for the creative.

  • accountId (path, required) — The id for the account that will serve this creative.
  • buyerCreativeId (path, required) — The buyer-specific id for this creative.
  • dealId (path, required) — The id of the deal id to associate with this creative.
GET

/creatives/{accountId}/{buyerCreativeId}/listDeals

Lists the external deal ids associated with the creative.

  • accountId (path, required) — The id for the account that will serve this creative.
  • buyerCreativeId (path, required) — The buyer-specific id for this creative.
POST

/creatives/{accountId}/{buyerCreativeId}/removeDeal/{dealId}

Remove a deal id associated with the creative.

  • accountId (path, required) — The id for the account that will serve this creative.
  • buyerCreativeId (path, required) — The buyer-specific id for this creative.
  • dealId (path, required) — The id of the deal id to disassociate with this creative.
GET

/performancereport

Retrieves the authenticated user's list of performance metrics.

  • accountId (query, required) — The account id to get the reports.
  • endDateTime (query, required) — The end time of the report in ISO 8601 timestamp format using UTC.
  • startDateTime (query, required) — The start time of the report in ISO 8601 timestamp format using UTC.
  • maxResults (query, limit) — Maximum number of entries returned on one result page. If not set, the default is 100. Optional.
  • pageToken (query) — A continuation token, used to page through performance reports. To retrieve the next page, set this parameter to the value of "nextPageToken" from the previous response. Optional.
GET

/pretargetingconfigs/{accountId}

Retrieves a list of the authenticated user's pretargeting configurations.

  • accountId (path, required) — The account id to get the pretargeting configs for.
POST

/pretargetingconfigs/{accountId}

Inserts a new pretargeting configuration.

  • accountId (path, required) — The account id to insert the pretargeting config for.
DELETE

/pretargetingconfigs/{accountId}/{configId}

Deletes an existing pretargeting config.

  • accountId (path, required) — The account id to delete the pretargeting config for.
  • configId (path, required) — The specific id of the configuration to delete.
GET

/pretargetingconfigs/{accountId}/{configId}

Gets a specific pretargeting configuration

  • accountId (path, required) — The account id to get the pretargeting config for.
  • configId (path, required) — The specific id of the configuration to retrieve.
PATCH

/pretargetingconfigs/{accountId}/{configId}

Updates an existing pretargeting config. This method supports patch semantics.

  • accountId (path, required) — The account id to update the pretargeting config for.
  • configId (path, required) — The specific id of the configuration to update.
PUT

/pretargetingconfigs/{accountId}/{configId}

Updates an existing pretargeting config.

  • accountId (path, required) — The account id to update the pretargeting config for.
  • configId (path, required) — The specific id of the configuration to update.
POST

/privateauction/{privateAuctionId}/updateproposal

Update a given private auction proposal

  • privateAuctionId (path, required) — The private auction id to be updated.
GET

/products/search

Gets the requested product.

  • pqlQuery (query) — The pql query used to query for products.
GET

/products/{productId}

Gets the requested product by id.

  • productId (path, required) — The id for the product to get the head revision for.
POST

/proposals/insert

Create the given list of proposals

GET

/proposals/search

Search for proposals using pql query

  • pqlQuery (query) — Query string to retrieve specific proposals.
GET

/proposals/{proposalId}

Get a proposal given its id

  • proposalId (path, required) — Id of the proposal to retrieve.
GET

/proposals/{proposalId}/deals

List all the deals for a given proposal

  • proposalId (path, required) — The proposalId to get deals for. To search across all proposals specify order_id = '-' as part of the URL.
  • pqlQuery (query) — Query string to retrieve specific deals.
POST

/proposals/{proposalId}/deals/delete

Delete the specified deals from the proposal

  • proposalId (path, required) — The proposalId to delete deals from.
POST

/proposals/{proposalId}/deals/insert

Add new deals for the specified proposal

  • proposalId (path, required) — proposalId for which deals need to be added.
POST

/proposals/{proposalId}/deals/update

Replaces all the deals in the proposal with the passed in deals

  • proposalId (path, required) — The proposalId to edit deals on.
GET

/proposals/{proposalId}/notes

Get all the notes associated with a proposal

  • proposalId (path, required) — The proposalId to get notes for. To search across all proposals specify order_id = '-' as part of the URL.
  • pqlQuery (query) — Query string to retrieve specific notes. To search the text contents of notes, please use syntax like "WHERE note.note = "foo" or "WHERE note.note LIKE "%bar%"
POST

/proposals/{proposalId}/notes/insert

Add notes to the proposal

  • proposalId (path, required) — The proposalId to add notes for.
POST

/proposals/{proposalId}/setupcomplete

Update the given proposal to indicate that setup has been completed.

  • proposalId (path, required) — The proposal id for which the setup is complete
PATCH

/proposals/{proposalId}/{revisionNumber}/{updateAction}

Update the given proposal. This method supports patch semantics.

  • proposalId (path, required) — The proposal id to update.
  • revisionNumber (path, required) — The last known revision number to update. If the head revision in the marketplace database has since changed, an error will be thrown. The caller should then fetch the latest proposal at head revision and retry the update at that revision.
  • updateAction (path, required) — The proposed action to take on the proposal. This field is required and it must be set when updating a proposal.
PUT

/proposals/{proposalId}/{revisionNumber}/{updateAction}

Update the given proposal

  • proposalId (path, required) — The proposal id to update.
  • revisionNumber (path, required) — The last known revision number to update. If the head revision in the marketplace database has since changed, an error will be thrown. The caller should then fetch the latest proposal at head revision and retry the update at that revision.
  • updateAction (path, required) — The proposed action to take on the proposal. This field is required and it must be set when updating a proposal.
GET

/publisher/{accountId}/profiles

Gets the requested publisher profile(s) by publisher accountId.

  • accountId (path, required) — The accountId of the publisher to get profiles for.

38 endpoints auto-detected

Authentication

This API requires authentication: OAuth.

curl -X GET \
  "https://www.googleapis.com/adexchangebuyer/v1.4/accounts"

www.googleapis.com · HTTPS only