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.
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.
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
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.
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"