Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(983)

Unified Diff: discovery/googleapis_beta/adexchangebuyer2__v2beta1.json

Issue 2936613002: Api-Roll 50: 2017-06-12 (Closed)
Patch Set: Created 3 years, 6 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
« no previous file with comments | « discovery/googleapis/youtubereporting__v1.json ('k') | discovery/googleapis_beta/appengine__v1beta.json » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: discovery/googleapis_beta/adexchangebuyer2__v2beta1.json
diff --git a/discovery/googleapis_beta/adexchangebuyer2__v2beta1.json b/discovery/googleapis_beta/adexchangebuyer2__v2beta1.json
index 301f5f4410bba30438923725bfa2d97ed54ef2c3..2e039a5996b9aca2bfcecb28d2a23958253d7837 100644
--- a/discovery/googleapis_beta/adexchangebuyer2__v2beta1.json
+++ b/discovery/googleapis_beta/adexchangebuyer2__v2beta1.json
@@ -25,6 +25,45 @@
"ownerDomain": "google.com",
"ownerName": "Google",
"parameters": {
+ "upload_protocol": {
+ "description": "Upload protocol for media (e.g. \"raw\", \"multipart\").",
+ "location": "query",
+ "type": "string"
+ },
+ "prettyPrint": {
+ "default": "true",
+ "description": "Returns response with indentations and line breaks.",
+ "location": "query",
+ "type": "boolean"
+ },
+ "uploadType": {
+ "description": "Legacy upload protocol for media (e.g. \"media\", \"multipart\").",
+ "location": "query",
+ "type": "string"
+ },
+ "fields": {
+ "description": "Selector specifying which fields to include in a partial response.",
+ "location": "query",
+ "type": "string"
+ },
+ "callback": {
+ "description": "JSONP",
+ "location": "query",
+ "type": "string"
+ },
+ "$.xgafv": {
+ "description": "V1 error format.",
+ "enum": [
+ "1",
+ "2"
+ ],
+ "enumDescriptions": [
+ "v1 error format",
+ "v2 error format"
+ ],
+ "location": "query",
+ "type": "string"
+ },
"alt": {
"default": "json",
"description": "Data format for response.",
@@ -41,13 +80,13 @@
"location": "query",
"type": "string"
},
- "access_token": {
- "description": "OAuth access token.",
+ "key": {
+ "description": "API key. Your API key identifies your project and provides you with API access, quota, and reports. Required unless you provide an OAuth 2.0 token.",
"location": "query",
"type": "string"
},
- "key": {
- "description": "API key. Your API key identifies your project and provides you with API access, quota, and reports. Required unless you provide an OAuth 2.0 token.",
+ "access_token": {
+ "description": "OAuth access token.",
"location": "query",
"type": "string"
},
@@ -62,52 +101,13 @@
"location": "query",
"type": "boolean"
},
- "oauth_token": {
- "description": "OAuth 2.0 token for the current user.",
- "location": "query",
- "type": "string"
- },
"bearer_token": {
"description": "OAuth bearer token.",
"location": "query",
"type": "string"
},
- "upload_protocol": {
- "description": "Upload protocol for media (e.g. \"raw\", \"multipart\").",
- "location": "query",
- "type": "string"
- },
- "prettyPrint": {
- "default": "true",
- "description": "Returns response with indentations and line breaks.",
- "location": "query",
- "type": "boolean"
- },
- "uploadType": {
- "description": "Legacy upload protocol for media (e.g. \"media\", \"multipart\").",
- "location": "query",
- "type": "string"
- },
- "fields": {
- "description": "Selector specifying which fields to include in a partial response.",
- "location": "query",
- "type": "string"
- },
- "$.xgafv": {
- "description": "V1 error format.",
- "enum": [
- "1",
- "2"
- ],
- "enumDescriptions": [
- "v1 error format",
- "v2 error format"
- ],
- "location": "query",
- "type": "string"
- },
- "callback": {
- "description": "JSONP",
+ "oauth_token": {
+ "description": "OAuth 2.0 token for the current user.",
"location": "query",
"type": "string"
}
@@ -116,132 +116,134 @@
"resources": {
"accounts": {
"resources": {
- "clients": {
+ "filterSets": {
"methods": {
"get": {
- "description": "Gets a client buyer with a given client account ID.",
+ "description": "Retrieves the requested filter set for the account with the given account\nID.",
"httpMethod": "GET",
- "id": "adexchangebuyer2.accounts.clients.get",
+ "id": "adexchangebuyer2.accounts.filterSets.get",
"parameterOrder": [
"accountId",
- "clientAccountId"
+ "filterSetId"
],
"parameters": {
"accountId": {
- "description": "Numerical account ID of the client's sponsor buyer. (required)",
+ "description": "Account ID of the buyer.",
"format": "int64",
"location": "path",
"required": true,
"type": "string"
},
- "clientAccountId": {
- "description": "Numerical account ID of the client buyer to retrieve. (required)",
+ "filterSetId": {
+ "description": "The ID of the filter set to get.",
"format": "int64",
"location": "path",
"required": true,
"type": "string"
}
},
- "path": "v2beta1/accounts/{accountId}/clients/{clientAccountId}",
+ "path": "v2beta1/accounts/{accountId}/filterSets/{filterSetId}",
"response": {
- "$ref": "Client"
+ "$ref": "FilterSet"
},
"scopes": [
"https://www.googleapis.com/auth/adexchange.buyer"
]
},
"list": {
- "description": "Lists all the clients for the current sponsor buyer.",
+ "description": "Lists all filter sets for the account with the given account ID.",
"httpMethod": "GET",
- "id": "adexchangebuyer2.accounts.clients.list",
+ "id": "adexchangebuyer2.accounts.filterSets.list",
"parameterOrder": [
"accountId"
],
"parameters": {
"pageToken": {
- "description": "A token identifying a page of results the server should return.\nTypically, this is the value of\nListClientsResponse.nextPageToken\nreturned from the previous call to the\naccounts.clients.list method.",
+ "description": "A token identifying a page of results the server should return.\nTypically, this is the value of\nListFilterSetsResponse.nextPageToken\nreturned from the previous call to the\naccounts.rtbBreakout.filterSets.list\nmethod.",
"location": "query",
"type": "string"
},
"accountId": {
- "description": "Unique numerical account ID of the sponsor buyer to list the clients for.",
+ "description": "Account ID of the buyer.",
"format": "int64",
"location": "path",
"required": true,
"type": "string"
},
"pageSize": {
- "description": "Requested page size. The server may return fewer clients than requested.\nIf unspecified, the server will pick an appropriate default.",
+ "description": "Requested page size. The server may return fewer than requested.\nIf unspecified, the server will pick an appropriate default.",
"format": "int32",
"location": "query",
"type": "integer"
}
},
- "path": "v2beta1/accounts/{accountId}/clients",
+ "path": "v2beta1/accounts/{accountId}/filterSets",
"response": {
- "$ref": "ListClientsResponse"
+ "$ref": "ListFilterSetsResponse"
},
"scopes": [
"https://www.googleapis.com/auth/adexchange.buyer"
]
},
- "update": {
- "description": "Updates an existing client buyer.",
- "httpMethod": "PUT",
- "id": "adexchangebuyer2.accounts.clients.update",
+ "create": {
+ "description": "Creates the specified filter set for the account with the given account ID.",
+ "httpMethod": "POST",
+ "id": "adexchangebuyer2.accounts.filterSets.create",
"parameterOrder": [
- "accountId",
- "clientAccountId"
+ "accountId"
],
"parameters": {
"accountId": {
- "description": "Unique numerical account ID for the buyer of which the client buyer\nis a customer; the sponsor buyer to update a client for. (required)",
+ "description": "Account ID of the buyer.",
"format": "int64",
"location": "path",
"required": true,
"type": "string"
},
- "clientAccountId": {
- "description": "Unique numerical account ID of the client to update. (required)",
- "format": "int64",
- "location": "path",
- "required": true,
- "type": "string"
+ "isTransient": {
+ "description": "Whether the filter set is transient, or should be persisted indefinitely.\nBy default, filter sets are not transient.\nIf transient, it will be available for at least 1 hour after creation.",
+ "location": "query",
+ "type": "boolean"
}
},
- "path": "v2beta1/accounts/{accountId}/clients/{clientAccountId}",
+ "path": "v2beta1/accounts/{accountId}/filterSets",
"request": {
- "$ref": "Client"
+ "$ref": "FilterSet"
},
"response": {
- "$ref": "Client"
+ "$ref": "FilterSet"
},
"scopes": [
"https://www.googleapis.com/auth/adexchange.buyer"
]
},
- "create": {
- "description": "Creates a new client buyer.",
- "httpMethod": "POST",
- "id": "adexchangebuyer2.accounts.clients.create",
+ "delete": {
+ "description": "Deletes the requested filter set from the account with the given account\nID.",
+ "httpMethod": "DELETE",
+ "id": "adexchangebuyer2.accounts.filterSets.delete",
"parameterOrder": [
- "accountId"
+ "accountId",
+ "filterSetId"
],
"parameters": {
"accountId": {
- "description": "Unique numerical account ID for the buyer of which the client buyer\nis a customer; the sponsor buyer to create a client for. (required)",
+ "description": "Account ID of the buyer.",
+ "format": "int64",
+ "location": "path",
+ "required": true,
+ "type": "string"
+ },
+ "filterSetId": {
+ "description": "The ID of the filter set to delete.",
"format": "int64",
"location": "path",
"required": true,
"type": "string"
}
},
- "path": "v2beta1/accounts/{accountId}/clients",
- "request": {
- "$ref": "Client"
- },
+ "path": "v2beta1/accounts/{accountId}/filterSets/{filterSetId}",
"response": {
- "$ref": "Client"
+ "$ref": "Empty"
},
"scopes": [
"https://www.googleapis.com/auth/adexchange.buyer"
@@ -249,120 +251,316 @@
}
},
"resources": {
- "invitations": {
+ "filteredBids": {
"methods": {
- "create": {
- "description": "Creates and sends out an email invitation to access\nan Ad Exchange client buyer account.",
- "httpMethod": "POST",
- "id": "adexchangebuyer2.accounts.clients.invitations.create",
+ "list": {
+ "description": "List all reasons for which bids were filtered, with the number of bids\nfiltered for each reason.",
+ "httpMethod": "GET",
+ "id": "adexchangebuyer2.accounts.filterSets.filteredBids.list",
"parameterOrder": [
"accountId",
- "clientAccountId"
+ "filterSetId"
],
"parameters": {
+ "pageToken": {
+ "description": "A token identifying a page of results the server should return.\nTypically, this is the value of\nListFilteredBidsResponse.nextPageToken\nreturned from the previous call to the\naccounts.filterSets.filteredBids.list\nmethod.",
+ "location": "query",
+ "type": "string"
+ },
"accountId": {
- "description": "Numerical account ID of the client's sponsor buyer. (required)",
+ "description": "Account ID of the buyer.",
"format": "int64",
"location": "path",
"required": true,
"type": "string"
},
- "clientAccountId": {
- "description": "Numerical account ID of the client buyer that the user\nshould be associated with. (required)",
+ "pageSize": {
+ "description": "Requested page size. The server may return fewer than requested.\nIf unspecified, the server will pick an appropriate default.",
+ "format": "int32",
+ "location": "query",
+ "type": "integer"
+ },
+ "filterSetId": {
+ "description": "The ID of the filter set to apply.",
"format": "int64",
"location": "path",
"required": true,
"type": "string"
}
},
- "path": "v2beta1/accounts/{accountId}/clients/{clientAccountId}/invitations",
- "request": {
- "$ref": "ClientUserInvitation"
- },
+ "path": "v2beta1/accounts/{accountId}/filterSets/{filterSetId}/filteredBids",
"response": {
- "$ref": "ClientUserInvitation"
+ "$ref": "ListFilteredBidsResponse"
},
"scopes": [
"https://www.googleapis.com/auth/adexchange.buyer"
]
+ }
+ },
+ "resources": {
+ "creatives": {
+ "methods": {
+ "list": {
+ "description": "List all creatives associated with a specific reason for which bids were\nfiltered, with the number of bids filtered for each creative.",
+ "httpMethod": "GET",
+ "id": "adexchangebuyer2.accounts.filterSets.filteredBids.creatives.list",
+ "parameterOrder": [
+ "accountId",
+ "filterSetId",
+ "creativeStatusId"
+ ],
+ "parameters": {
+ "filterSetId": {
+ "description": "The ID of the filter set to apply.",
+ "format": "int64",
+ "location": "path",
+ "required": true,
+ "type": "string"
+ },
+ "creativeStatusId": {
+ "description": "The ID of the creative status for which to retrieve a breakdown by\ncreative.\nSee\n[creative-status-codes](https://developers.google.com/ad-exchange/rtb/downloads/creative-status-codes).",
+ "format": "int32",
+ "location": "path",
+ "required": true,
+ "type": "integer"
+ },
+ "pageToken": {
+ "description": "A token identifying a page of results the server should return.\nTypically, this is the value of\nListCreativeStatusBreakdownByCreativeResponse.nextPageToken\nreturned from the previous call to the\naccounts.filterSets.filteredBids.creatives.list\nmethod.",
+ "location": "query",
+ "type": "string"
+ },
+ "accountId": {
+ "description": "Account ID of the buyer.",
+ "format": "int64",
+ "location": "path",
+ "required": true,
+ "type": "string"
+ },
+ "pageSize": {
+ "description": "Requested page size. The server may return fewer than requested.\nIf unspecified, the server will pick an appropriate default.",
+ "format": "int32",
+ "location": "query",
+ "type": "integer"
+ }
+ },
+ "path": "v2beta1/accounts/{accountId}/filterSets/{filterSetId}/filteredBids/{creativeStatusId}/creatives",
+ "response": {
+ "$ref": "ListCreativeStatusBreakdownByCreativeResponse"
+ },
+ "scopes": [
+ "https://www.googleapis.com/auth/adexchange.buyer"
+ ]
+ }
+ },
+ "resources": {
+ "details": {
+ "methods": {
+ "list": {
+ "description": "List all details associated with a specific reason for which bids were\nfiltered and a specific creative that was filtered for that reason, with\nthe number of bids filtered for each detail.",
+ "httpMethod": "GET",
+ "id": "adexchangebuyer2.accounts.filterSets.filteredBids.creatives.details.list",
+ "parameterOrder": [
+ "accountId",
+ "filterSetId",
+ "creativeStatusId",
+ "creativeId"
+ ],
+ "parameters": {
+ "pageSize": {
+ "description": "Requested page size. The server may return fewer than requested.\nIf unspecified, the server will pick an appropriate default.",
+ "format": "int32",
+ "location": "query",
+ "type": "integer"
+ },
+ "creativeId": {
+ "description": "The creative ID for which to retrieve a breakdown by detail.",
+ "location": "path",
+ "required": true,
+ "type": "string"
+ },
+ "creativeStatusId": {
+ "description": "The ID of the creative status for which to retrieve a breakdown by detail.\nSee\n[creative-status-codes](https://developers.google.com/ad-exchange/rtb/downloads/creative-status-codes).",
+ "format": "int32",
+ "location": "path",
+ "required": true,
+ "type": "integer"
+ },
+ "accountId": {
+ "description": "Account ID of the buyer.",
+ "format": "int64",
+ "location": "path",
+ "required": true,
+ "type": "string"
+ },
+ "filterSetId": {
+ "description": "The ID of the filter set to apply.",
+ "format": "int64",
+ "location": "path",
+ "required": true,
+ "type": "string"
+ },
+ "pageToken": {
+ "description": "A token identifying a page of results the server should return.\nTypically, this is the value of\nListCreativeStatusAndCreativeBreakdownByDetailResponse.nextPageToken\nreturned from the previous call to the\naccounts.filterSets.filteredBids.creatives.details.list\nmethod.",
+ "location": "query",
+ "type": "string"
+ }
+ },
+ "path": "v2beta1/accounts/{accountId}/filterSets/{filterSetId}/filteredBids/{creativeStatusId}/creatives/{creativeId}/details",
+ "response": {
+ "$ref": "ListCreativeStatusAndCreativeBreakdownByDetailResponse"
+ },
+ "scopes": [
+ "https://www.googleapis.com/auth/adexchange.buyer"
+ ]
+ }
+ }
+ }
+ }
},
- "get": {
- "description": "Retrieves an existing client user invitation.",
+ "details": {
+ "methods": {
+ "list": {
+ "description": "List all details associated with a specific reason for which bids were\nfiltered, with the number of bids filtered for each detail.",
+ "httpMethod": "GET",
+ "id": "adexchangebuyer2.accounts.filterSets.filteredBids.details.list",
+ "parameterOrder": [
+ "accountId",
+ "filterSetId",
+ "creativeStatusId"
+ ],
+ "parameters": {
+ "filterSetId": {
+ "description": "The ID of the filter set to apply.",
+ "format": "int64",
+ "location": "path",
+ "required": true,
+ "type": "string"
+ },
+ "creativeStatusId": {
+ "description": "The ID of the creative status for which to retrieve a breakdown by detail.\nSee\n[creative-status-codes](https://developers.google.com/ad-exchange/rtb/downloads/creative-status-codes).",
+ "format": "int32",
+ "location": "path",
+ "required": true,
+ "type": "integer"
+ },
+ "pageToken": {
+ "description": "A token identifying a page of results the server should return.\nTypically, this is the value of\nListCreativeStatusBreakdownByDetailResponse.nextPageToken\nreturned from the previous call to the\naccounts.filterSets.filteredBids.details.list\nmethod.",
+ "location": "query",
+ "type": "string"
+ },
+ "accountId": {
+ "description": "Account ID of the buyer.",
+ "format": "int64",
+ "location": "path",
+ "required": true,
+ "type": "string"
+ },
+ "pageSize": {
+ "description": "Requested page size. The server may return fewer than requested.\nIf unspecified, the server will pick an appropriate default.",
+ "format": "int32",
+ "location": "query",
+ "type": "integer"
+ }
+ },
+ "path": "v2beta1/accounts/{accountId}/filterSets/{filterSetId}/filteredBids/{creativeStatusId}/details",
+ "response": {
+ "$ref": "ListCreativeStatusBreakdownByDetailResponse"
+ },
+ "scopes": [
+ "https://www.googleapis.com/auth/adexchange.buyer"
+ ]
+ }
+ }
+ }
+ }
+ },
+ "filteredImpressions": {
+ "methods": {
+ "list": {
+ "description": "List all reasons that caused an impression to be filtered (i.e. not\nconsidered as an inventory match), with the number of impressions that were\nfiltered for each reason.",
"httpMethod": "GET",
- "id": "adexchangebuyer2.accounts.clients.invitations.get",
+ "id": "adexchangebuyer2.accounts.filterSets.filteredImpressions.list",
"parameterOrder": [
"accountId",
- "clientAccountId",
- "invitationId"
+ "filterSetId"
],
"parameters": {
- "accountId": {
- "description": "Numerical account ID of the client's sponsor buyer. (required)",
- "format": "int64",
- "location": "path",
- "required": true,
+ "pageToken": {
+ "description": "A token identifying a page of results the server should return.\nTypically, this is the value of\nListFilteredImpressionsResponse.nextPageToken\nreturned from the previous call to the\naccounts.filterSets.filteredImpressions.list\nmethod.",
+ "location": "query",
"type": "string"
},
- "clientAccountId": {
- "description": "Numerical account ID of the client buyer that the user invitation\nto be retrieved is associated with. (required)",
+ "accountId": {
+ "description": "Account ID of the buyer.",
"format": "int64",
"location": "path",
"required": true,
"type": "string"
},
- "invitationId": {
- "description": "Numerical identifier of the user invitation to retrieve. (required)",
+ "pageSize": {
+ "description": "Requested page size. The server may return fewer than requested.\nIf unspecified, the server will pick an appropriate default.",
+ "format": "int32",
+ "location": "query",
+ "type": "integer"
+ },
+ "filterSetId": {
+ "description": "The ID of the filter set to apply.",
"format": "int64",
"location": "path",
"required": true,
"type": "string"
}
},
- "path": "v2beta1/accounts/{accountId}/clients/{clientAccountId}/invitations/{invitationId}",
+ "path": "v2beta1/accounts/{accountId}/filterSets/{filterSetId}/filteredImpressions",
"response": {
- "$ref": "ClientUserInvitation"
+ "$ref": "ListFilteredImpressionsResponse"
},
"scopes": [
"https://www.googleapis.com/auth/adexchange.buyer"
]
- },
+ }
+ }
+ },
+ "losingBids": {
+ "methods": {
"list": {
- "description": "Lists all the client users invitations for a client\nwith a given account ID.",
+ "description": "List all reasons for which bids lost in the auction, with the number of\nbids that lost for each reason.",
"httpMethod": "GET",
- "id": "adexchangebuyer2.accounts.clients.invitations.list",
+ "id": "adexchangebuyer2.accounts.filterSets.losingBids.list",
"parameterOrder": [
"accountId",
- "clientAccountId"
+ "filterSetId"
],
"parameters": {
"pageToken": {
- "description": "A token identifying a page of results the server should return.\nTypically, this is the value of\nListClientUserInvitationsResponse.nextPageToken\nreturned from the previous call to the\nclients.invitations.list\nmethod.",
+ "description": "A token identifying a page of results the server should return.\nTypically, this is the value of\nListLosingBidsResponse.nextPageToken\nreturned from the previous call to the\naccounts.filterSets.losingBids.list\nmethod.",
"location": "query",
"type": "string"
},
"accountId": {
- "description": "Numerical account ID of the client's sponsor buyer. (required)",
+ "description": "Account ID of the buyer.",
"format": "int64",
"location": "path",
"required": true,
"type": "string"
},
"pageSize": {
- "description": "Requested page size. Server may return fewer clients than requested.\nIf unspecified, server will pick an appropriate default.",
+ "description": "Requested page size. The server may return fewer than requested.\nIf unspecified, the server will pick an appropriate default.",
"format": "int32",
"location": "query",
"type": "integer"
},
- "clientAccountId": {
- "description": "Numerical account ID of the client buyer to list invitations for.\n(required)\nYou must either specify a string representation of a\nnumerical account identifier or the `-` character\nto list all the invitations for all the clients\nof a given sponsor buyer.",
+ "filterSetId": {
+ "description": "The ID of the filter set to apply.",
+ "format": "int64",
"location": "path",
"required": true,
"type": "string"
}
},
- "path": "v2beta1/accounts/{accountId}/clients/{clientAccountId}/invitations",
+ "path": "v2beta1/accounts/{accountId}/filterSets/{filterSetId}/losingBids",
"response": {
- "$ref": "ListClientUserInvitationsResponse"
+ "$ref": "ListLosingBidsResponse"
},
"scopes": [
"https://www.googleapis.com/auth/adexchange.buyer"
@@ -370,128 +568,234 @@
}
}
},
- "users": {
+ "bidMetrics": {
"methods": {
"list": {
- "description": "Lists all the known client users for a specified\nsponsor buyer account ID.",
+ "description": "Lists all metrics that are measured in terms of number of bids.",
"httpMethod": "GET",
- "id": "adexchangebuyer2.accounts.clients.users.list",
+ "id": "adexchangebuyer2.accounts.filterSets.bidMetrics.list",
"parameterOrder": [
"accountId",
- "clientAccountId"
+ "filterSetId"
],
"parameters": {
- "accountId": {
- "description": "Numerical account ID of the sponsor buyer of the client to list users for.\n(required)",
+ "filterSetId": {
+ "description": "The ID of the filter set to apply.",
"format": "int64",
"location": "path",
"required": true,
"type": "string"
},
- "pageSize": {
- "description": "Requested page size. The server may return fewer clients than requested.\nIf unspecified, the server will pick an appropriate default.",
- "format": "int32",
+ "pageToken": {
+ "description": "A token identifying a page of results the server should return.\nTypically, this is the value of\nListBidMetricsResponse.nextPageToken\nreturned from the previous call to the\naccounts.filterSets.bidMetrics.list\nmethod.",
"location": "query",
- "type": "integer"
+ "type": "string"
},
- "clientAccountId": {
- "description": "The account ID of the client buyer to list users for. (required)\nYou must specify either a string representation of a\nnumerical account identifier or the `-` character\nto list all the client users for all the clients\nof a given sponsor buyer.",
+ "accountId": {
+ "description": "Account ID of the buyer.",
+ "format": "int64",
"location": "path",
"required": true,
"type": "string"
},
- "pageToken": {
- "description": "A token identifying a page of results the server should return.\nTypically, this is the value of\nListClientUsersResponse.nextPageToken\nreturned from the previous call to the\naccounts.clients.users.list method.",
+ "pageSize": {
+ "description": "Requested page size. The server may return fewer than requested.\nIf unspecified, the server will pick an appropriate default.",
+ "format": "int32",
"location": "query",
- "type": "string"
+ "type": "integer"
}
},
- "path": "v2beta1/accounts/{accountId}/clients/{clientAccountId}/users",
+ "path": "v2beta1/accounts/{accountId}/filterSets/{filterSetId}/bidMetrics",
"response": {
- "$ref": "ListClientUsersResponse"
+ "$ref": "ListBidMetricsResponse"
},
"scopes": [
"https://www.googleapis.com/auth/adexchange.buyer"
]
- },
- "get": {
- "description": "Retrieves an existing client user.",
+ }
+ }
+ },
+ "impressionMetrics": {
+ "methods": {
+ "list": {
+ "description": "Lists all metrics that are measured in terms of number of impressions.",
"httpMethod": "GET",
- "id": "adexchangebuyer2.accounts.clients.users.get",
+ "id": "adexchangebuyer2.accounts.filterSets.impressionMetrics.list",
"parameterOrder": [
"accountId",
- "clientAccountId",
- "userId"
+ "filterSetId"
],
"parameters": {
- "userId": {
- "description": "Numerical identifier of the user to retrieve. (required)",
+ "pageToken": {
+ "description": "A token identifying a page of results the server should return.\nTypically, this is the value of\nListImpressionMetricsResponse.nextPageToken\nreturned from the previous call to the\naccounts.filterSets.impressionMetrics.list\nmethod.",
+ "location": "query",
+ "type": "string"
+ },
+ "accountId": {
+ "description": "Account ID of the buyer.",
+ "format": "int64",
+ "location": "path",
+ "required": true,
+ "type": "string"
+ },
+ "pageSize": {
+ "description": "Requested page size. The server may return fewer than requested.\nIf unspecified, the server will pick an appropriate default.",
+ "format": "int32",
+ "location": "query",
+ "type": "integer"
+ },
+ "filterSetId": {
+ "description": "The ID of the filter set to apply.",
"format": "int64",
"location": "path",
"required": true,
"type": "string"
+ }
+ },
+ "path": "v2beta1/accounts/{accountId}/filterSets/{filterSetId}/impressionMetrics",
+ "response": {
+ "$ref": "ListImpressionMetricsResponse"
+ },
+ "scopes": [
+ "https://www.googleapis.com/auth/adexchange.buyer"
+ ]
+ }
+ }
+ },
+ "bidResponseErrors": {
+ "methods": {
+ "list": {
+ "description": "List all errors that occurred in bid responses, with the number of bid\nresponses affected for each reason.",
+ "httpMethod": "GET",
+ "id": "adexchangebuyer2.accounts.filterSets.bidResponseErrors.list",
+ "parameterOrder": [
+ "accountId",
+ "filterSetId"
+ ],
+ "parameters": {
+ "pageToken": {
+ "description": "A token identifying a page of results the server should return.\nTypically, this is the value of\nListBidResponseErrorsResponse.nextPageToken\nreturned from the previous call to the\naccounts.filterSets.bidResponseErrors.list\nmethod.",
+ "location": "query",
+ "type": "string"
},
"accountId": {
- "description": "Numerical account ID of the client's sponsor buyer. (required)",
+ "description": "Account ID of the buyer.",
"format": "int64",
"location": "path",
"required": true,
"type": "string"
},
- "clientAccountId": {
- "description": "Numerical account ID of the client buyer\nthat the user to be retrieved is associated with. (required)",
+ "pageSize": {
+ "description": "Requested page size. The server may return fewer than requested.\nIf unspecified, the server will pick an appropriate default.",
+ "format": "int32",
+ "location": "query",
+ "type": "integer"
+ },
+ "filterSetId": {
+ "description": "The ID of the filter set to apply.",
"format": "int64",
"location": "path",
"required": true,
"type": "string"
}
},
- "path": "v2beta1/accounts/{accountId}/clients/{clientAccountId}/users/{userId}",
+ "path": "v2beta1/accounts/{accountId}/filterSets/{filterSetId}/bidResponseErrors",
"response": {
- "$ref": "ClientUser"
+ "$ref": "ListBidResponseErrorsResponse"
},
"scopes": [
"https://www.googleapis.com/auth/adexchange.buyer"
]
- },
- "update": {
- "description": "Updates an existing client user.\nOnly the user status can be changed on update.",
- "httpMethod": "PUT",
- "id": "adexchangebuyer2.accounts.clients.users.update",
+ }
+ }
+ },
+ "bidResponsesWithoutBids": {
+ "methods": {
+ "list": {
+ "description": "List all reasons for which bid responses were considered to have no\napplicable bids, with the number of bid responses affected for each reason.",
+ "httpMethod": "GET",
+ "id": "adexchangebuyer2.accounts.filterSets.bidResponsesWithoutBids.list",
"parameterOrder": [
"accountId",
- "clientAccountId",
- "userId"
+ "filterSetId"
],
"parameters": {
- "userId": {
- "description": "Numerical identifier of the user to retrieve. (required)",
+ "pageToken": {
+ "description": "A token identifying a page of results the server should return.\nTypically, this is the value of\nListBidResponsesWithoutBidsResponse.nextPageToken\nreturned from the previous call to the\naccounts.filterSets.bidResponsesWithoutBids.list\nmethod.",
+ "location": "query",
+ "type": "string"
+ },
+ "accountId": {
+ "description": "Account ID of the buyer.",
+ "format": "int64",
+ "location": "path",
+ "required": true,
+ "type": "string"
+ },
+ "pageSize": {
+ "description": "Requested page size. The server may return fewer than requested.\nIf unspecified, the server will pick an appropriate default.",
+ "format": "int32",
+ "location": "query",
+ "type": "integer"
+ },
+ "filterSetId": {
+ "description": "The ID of the filter set to apply.",
"format": "int64",
"location": "path",
"required": true,
"type": "string"
+ }
+ },
+ "path": "v2beta1/accounts/{accountId}/filterSets/{filterSetId}/bidResponsesWithoutBids",
+ "response": {
+ "$ref": "ListBidResponsesWithoutBidsResponse"
+ },
+ "scopes": [
+ "https://www.googleapis.com/auth/adexchange.buyer"
+ ]
+ }
+ }
+ },
+ "filteredBidRequests": {
+ "methods": {
+ "list": {
+ "description": "List all reasons that caused a bid request not to be sent for an\nimpression, with the number of bid requests not sent for each reason.",
+ "httpMethod": "GET",
+ "id": "adexchangebuyer2.accounts.filterSets.filteredBidRequests.list",
+ "parameterOrder": [
+ "accountId",
+ "filterSetId"
+ ],
+ "parameters": {
+ "pageToken": {
+ "description": "A token identifying a page of results the server should return.\nTypically, this is the value of\nListFilteredBidRequestsResponse.nextPageToken\nreturned from the previous call to the\naccounts.filterSets.filteredBidRequests.list\nmethod.",
+ "location": "query",
+ "type": "string"
},
"accountId": {
- "description": "Numerical account ID of the client's sponsor buyer. (required)",
+ "description": "Account ID of the buyer.",
"format": "int64",
"location": "path",
"required": true,
"type": "string"
},
- "clientAccountId": {
- "description": "Numerical account ID of the client buyer that the user to be retrieved\nis associated with. (required)",
+ "pageSize": {
+ "description": "Requested page size. The server may return fewer than requested.\nIf unspecified, the server will pick an appropriate default.",
+ "format": "int32",
+ "location": "query",
+ "type": "integer"
+ },
+ "filterSetId": {
+ "description": "The ID of the filter set to apply.",
"format": "int64",
"location": "path",
"required": true,
"type": "string"
}
},
- "path": "v2beta1/accounts/{accountId}/clients/{clientAccountId}/users/{userId}",
- "request": {
- "$ref": "ClientUser"
- },
+ "path": "v2beta1/accounts/{accountId}/filterSets/{filterSetId}/filteredBidRequests",
"response": {
- "$ref": "ClientUser"
+ "$ref": "ListFilteredBidRequestsResponse"
},
"scopes": [
"https://www.googleapis.com/auth/adexchange.buyer"
@@ -501,206 +805,132 @@
}
}
},
- "creatives": {
+ "clients": {
"methods": {
- "watch": {
- "description": "Watches a creative. Will result in push notifications being sent to the\ntopic when the creative changes status.",
- "httpMethod": "POST",
- "id": "adexchangebuyer2.accounts.creatives.watch",
+ "get": {
+ "description": "Gets a client buyer with a given client account ID.",
+ "httpMethod": "GET",
+ "id": "adexchangebuyer2.accounts.clients.get",
"parameterOrder": [
"accountId",
- "creativeId"
+ "clientAccountId"
],
"parameters": {
"accountId": {
- "description": "The account of the creative to watch.",
+ "description": "Numerical account ID of the client's sponsor buyer. (required)",
+ "format": "int64",
"location": "path",
"required": true,
"type": "string"
},
- "creativeId": {
- "description": "The creative ID to watch for status changes.\nSpecify \"-\" to watch all creatives under the above account.\nIf both creative-level and account-level notifications are\nsent, only a single notification will be sent to the\ncreative-level notification topic.",
+ "clientAccountId": {
+ "description": "Numerical account ID of the client buyer to retrieve. (required)",
+ "format": "int64",
"location": "path",
"required": true,
"type": "string"
}
},
- "path": "v2beta1/accounts/{accountId}/creatives/{creativeId}:watch",
- "request": {
- "$ref": "WatchCreativeRequest"
- },
+ "path": "v2beta1/accounts/{accountId}/clients/{clientAccountId}",
"response": {
- "$ref": "Empty"
+ "$ref": "Client"
},
"scopes": [
"https://www.googleapis.com/auth/adexchange.buyer"
]
},
- "get": {
- "description": "Gets a creative.",
+ "list": {
+ "description": "Lists all the clients for the current sponsor buyer.",
"httpMethod": "GET",
- "id": "adexchangebuyer2.accounts.creatives.get",
+ "id": "adexchangebuyer2.accounts.clients.list",
"parameterOrder": [
- "accountId",
- "creativeId"
+ "accountId"
],
"parameters": {
- "accountId": {
- "description": "The account the creative belongs to.",
- "location": "path",
- "required": true,
+ "pageToken": {
+ "description": "A token identifying a page of results the server should return.\nTypically, this is the value of\nListClientsResponse.nextPageToken\nreturned from the previous call to the\naccounts.clients.list method.",
+ "location": "query",
"type": "string"
},
- "creativeId": {
- "description": "The ID of the creative to retrieve.",
+ "accountId": {
+ "description": "Unique numerical account ID of the sponsor buyer to list the clients for.",
+ "format": "int64",
"location": "path",
"required": true,
"type": "string"
+ },
+ "pageSize": {
+ "description": "Requested page size. The server may return fewer clients than requested.\nIf unspecified, the server will pick an appropriate default.",
+ "format": "int32",
+ "location": "query",
+ "type": "integer"
}
},
- "path": "v2beta1/accounts/{accountId}/creatives/{creativeId}",
+ "path": "v2beta1/accounts/{accountId}/clients",
"response": {
- "$ref": "Creative"
+ "$ref": "ListClientsResponse"
},
"scopes": [
"https://www.googleapis.com/auth/adexchange.buyer"
]
},
"update": {
- "description": "Updates a creative.",
+ "description": "Updates an existing client buyer.",
"httpMethod": "PUT",
- "id": "adexchangebuyer2.accounts.creatives.update",
+ "id": "adexchangebuyer2.accounts.clients.update",
"parameterOrder": [
"accountId",
- "creativeId"
+ "clientAccountId"
],
"parameters": {
"accountId": {
- "description": "The account that this creative belongs to.\nCan be used to filter the response of the\ncreatives.list\nmethod.",
+ "description": "Unique numerical account ID for the buyer of which the client buyer\nis a customer; the sponsor buyer to update a client for. (required)",
+ "format": "int64",
"location": "path",
"required": true,
"type": "string"
},
- "creativeId": {
- "description": "The buyer-defined creative ID of this creative.\nCan be used to filter the response of the\ncreatives.list\nmethod.",
+ "clientAccountId": {
+ "description": "Unique numerical account ID of the client to update. (required)",
+ "format": "int64",
"location": "path",
"required": true,
"type": "string"
}
},
- "path": "v2beta1/accounts/{accountId}/creatives/{creativeId}",
+ "path": "v2beta1/accounts/{accountId}/clients/{clientAccountId}",
"request": {
- "$ref": "Creative"
- },
- "response": {
- "$ref": "Creative"
- },
- "scopes": [
- "https://www.googleapis.com/auth/adexchange.buyer"
- ]
- },
- "list": {
- "description": "Lists creatives.",
- "httpMethod": "GET",
- "id": "adexchangebuyer2.accounts.creatives.list",
- "parameterOrder": [
- "accountId"
- ],
- "parameters": {
- "pageToken": {
- "description": "A token identifying a page of results the server should return.\nTypically, this is the value of\nListCreativesResponse.next_page_token\nreturned from the previous call to 'ListCreatives' method.",
- "location": "query",
- "type": "string"
- },
- "accountId": {
- "description": "The account to list the creatives from.\nSpecify \"-\" to list all creatives the current user has access to.",
- "location": "path",
- "required": true,
- "type": "string"
- },
- "pageSize": {
- "description": "Requested page size. The server may return fewer creatives than requested\n(due to timeout constraint) even if more are available via another call.\nIf unspecified, server will pick an appropriate default.\nAcceptable values are 1 to 1000, inclusive.",
- "format": "int32",
- "location": "query",
- "type": "integer"
- },
- "query": {
- "description": "An optional query string to filter creatives. If no filter is specified,\nall active creatives will be returned.\nSupported queries are:\n<ul>\n<li>accountId=<i>account_id_string</i>\n<li>creativeId=<i>creative_id_string</i>\n<li>dealsStatus: {approved, conditionally_approved, disapproved,\n not_checked}\n<li>openAuctionStatus: {approved, conditionally_approved, disapproved,\n not_checked}\n<li>attribute: {a numeric attribute from the list of attributes}\n<li>disapprovalReason: {a reason from DisapprovalReason\n</ul>\nExample: 'accountId=12345 AND (dealsStatus:disapproved AND disapprovalReason:unacceptable_content) OR attribute:47'",
- "location": "query",
- "type": "string"
- }
+ "$ref": "Client"
},
- "path": "v2beta1/accounts/{accountId}/creatives",
"response": {
- "$ref": "ListCreativesResponse"
+ "$ref": "Client"
},
"scopes": [
"https://www.googleapis.com/auth/adexchange.buyer"
]
},
"create": {
- "description": "Creates a creative.",
+ "description": "Creates a new client buyer.",
"httpMethod": "POST",
- "id": "adexchangebuyer2.accounts.creatives.create",
+ "id": "adexchangebuyer2.accounts.clients.create",
"parameterOrder": [
"accountId"
],
"parameters": {
"accountId": {
- "description": "The account that this creative belongs to.\nCan be used to filter the response of the\ncreatives.list\nmethod.",
+ "description": "Unique numerical account ID for the buyer of which the client buyer\nis a customer; the sponsor buyer to create a client for. (required)",
+ "format": "int64",
"location": "path",
"required": true,
"type": "string"
- },
- "duplicateIdMode": {
- "description": "Indicates if multiple creatives can share an ID or not. Default is\nNO_DUPLICATES (one ID per creative).",
- "enum": [
- "NO_DUPLICATES",
- "FORCE_ENABLE_DUPLICATE_IDS"
- ],
- "location": "query",
- "type": "string"
}
},
- "path": "v2beta1/accounts/{accountId}/creatives",
+ "path": "v2beta1/accounts/{accountId}/clients",
"request": {
- "$ref": "Creative"
+ "$ref": "Client"
},
"response": {
- "$ref": "Creative"
- },
- "scopes": [
- "https://www.googleapis.com/auth/adexchange.buyer"
- ]
- },
- "stopWatching": {
- "description": "Stops watching a creative. Will stop push notifications being sent to the\ntopics when the creative changes status.",
- "httpMethod": "POST",
- "id": "adexchangebuyer2.accounts.creatives.stopWatching",
- "parameterOrder": [
- "accountId",
- "creativeId"
- ],
- "parameters": {
- "creativeId": {
- "description": "The creative ID of the creative to stop notifications for.\nSpecify \"-\" to specify stopping account level notifications.",
- "location": "path",
- "required": true,
- "type": "string"
- },
- "accountId": {
- "description": "The account of the creative to stop notifications for.",
- "location": "path",
- "required": true,
- "type": "string"
- }
- },
- "path": "v2beta1/accounts/{accountId}/creatives/{creativeId}:stopWatching",
- "request": {
- "$ref": "StopWatchingCreativeRequest"
- },
- "response": {
- "$ref": "Empty"
+ "$ref": "Client"
},
"scopes": [
"https://www.googleapis.com/auth/adexchange.buyer"
@@ -708,115 +938,249 @@
}
},
"resources": {
- "dealAssociations": {
+ "invitations": {
"methods": {
+ "get": {
+ "description": "Retrieves an existing client user invitation.",
+ "httpMethod": "GET",
+ "id": "adexchangebuyer2.accounts.clients.invitations.get",
+ "parameterOrder": [
+ "accountId",
+ "clientAccountId",
+ "invitationId"
+ ],
+ "parameters": {
+ "accountId": {
+ "description": "Numerical account ID of the client's sponsor buyer. (required)",
+ "format": "int64",
+ "location": "path",
+ "required": true,
+ "type": "string"
+ },
+ "clientAccountId": {
+ "description": "Numerical account ID of the client buyer that the user invitation\nto be retrieved is associated with. (required)",
+ "format": "int64",
+ "location": "path",
+ "required": true,
+ "type": "string"
+ },
+ "invitationId": {
+ "description": "Numerical identifier of the user invitation to retrieve. (required)",
+ "format": "int64",
+ "location": "path",
+ "required": true,
+ "type": "string"
+ }
+ },
+ "path": "v2beta1/accounts/{accountId}/clients/{clientAccountId}/invitations/{invitationId}",
+ "response": {
+ "$ref": "ClientUserInvitation"
+ },
+ "scopes": [
+ "https://www.googleapis.com/auth/adexchange.buyer"
+ ]
+ },
"list": {
- "description": "List all creative-deal associations.",
+ "description": "Lists all the client users invitations for a client\nwith a given account ID.",
"httpMethod": "GET",
- "id": "adexchangebuyer2.accounts.creatives.dealAssociations.list",
+ "id": "adexchangebuyer2.accounts.clients.invitations.list",
"parameterOrder": [
"accountId",
- "creativeId"
+ "clientAccountId"
],
"parameters": {
"pageToken": {
- "description": "A token identifying a page of results the server should return.\nTypically, this is the value of\nListDealAssociationsResponse.next_page_token\nreturned from the previous call to 'ListDealAssociations' method.",
+ "description": "A token identifying a page of results the server should return.\nTypically, this is the value of\nListClientUserInvitationsResponse.nextPageToken\nreturned from the previous call to the\nclients.invitations.list\nmethod.",
"location": "query",
"type": "string"
},
"accountId": {
- "description": "The account to list the associations from.\nSpecify \"-\" to list all creatives the current user has access to.",
+ "description": "Numerical account ID of the client's sponsor buyer. (required)",
+ "format": "int64",
"location": "path",
"required": true,
"type": "string"
},
"pageSize": {
- "description": "Requested page size. Server may return fewer associations than requested.\nIf unspecified, server will pick an appropriate default.",
+ "description": "Requested page size. Server may return fewer clients than requested.\nIf unspecified, server will pick an appropriate default.",
"format": "int32",
"location": "query",
"type": "integer"
},
- "query": {
- "description": "An optional query string to filter deal associations. If no filter is\nspecified, all associations will be returned.\nSupported queries are:\n<ul>\n<li>accountId=<i>account_id_string</i>\n<li>creativeId=<i>creative_id_string</i>\n<li>dealsId=<i>deals_id_string</i>\n<li>dealsStatus:{approved, conditionally_approved, disapproved,\n not_checked}\n<li>openAuctionStatus:{approved, conditionally_approved, disapproved,\n not_checked}\n</ul>\nExample: 'dealsId=12345 AND dealsStatus:disapproved'",
- "location": "query",
- "type": "string"
- },
- "creativeId": {
- "description": "The creative ID to list the associations from.\nSpecify \"-\" to list all creatives under the above account.",
+ "clientAccountId": {
+ "description": "Numerical account ID of the client buyer to list invitations for.\n(required)\nYou must either specify a string representation of a\nnumerical account identifier or the `-` character\nto list all the invitations for all the clients\nof a given sponsor buyer.",
"location": "path",
"required": true,
"type": "string"
}
},
- "path": "v2beta1/accounts/{accountId}/creatives/{creativeId}/dealAssociations",
+ "path": "v2beta1/accounts/{accountId}/clients/{clientAccountId}/invitations",
"response": {
- "$ref": "ListDealAssociationsResponse"
+ "$ref": "ListClientUserInvitationsResponse"
},
"scopes": [
"https://www.googleapis.com/auth/adexchange.buyer"
]
},
- "add": {
- "description": "Associate an existing deal with a creative.",
+ "create": {
+ "description": "Creates and sends out an email invitation to access\nan Ad Exchange client buyer account.",
"httpMethod": "POST",
- "id": "adexchangebuyer2.accounts.creatives.dealAssociations.add",
+ "id": "adexchangebuyer2.accounts.clients.invitations.create",
"parameterOrder": [
"accountId",
- "creativeId"
+ "clientAccountId"
],
"parameters": {
"accountId": {
- "description": "The account the creative belongs to.",
+ "description": "Numerical account ID of the client's sponsor buyer. (required)",
+ "format": "int64",
"location": "path",
"required": true,
"type": "string"
},
- "creativeId": {
- "description": "The ID of the creative associated with the deal.",
+ "clientAccountId": {
+ "description": "Numerical account ID of the client buyer that the user\nshould be associated with. (required)",
+ "format": "int64",
"location": "path",
"required": true,
"type": "string"
}
},
- "path": "v2beta1/accounts/{accountId}/creatives/{creativeId}/dealAssociations:add",
+ "path": "v2beta1/accounts/{accountId}/clients/{clientAccountId}/invitations",
"request": {
- "$ref": "AddDealAssociationRequest"
+ "$ref": "ClientUserInvitation"
},
"response": {
- "$ref": "Empty"
+ "$ref": "ClientUserInvitation"
+ },
+ "scopes": [
+ "https://www.googleapis.com/auth/adexchange.buyer"
+ ]
+ }
+ }
+ },
+ "users": {
+ "methods": {
+ "list": {
+ "description": "Lists all the known client users for a specified\nsponsor buyer account ID.",
+ "httpMethod": "GET",
+ "id": "adexchangebuyer2.accounts.clients.users.list",
+ "parameterOrder": [
+ "accountId",
+ "clientAccountId"
+ ],
+ "parameters": {
+ "clientAccountId": {
+ "description": "The account ID of the client buyer to list users for. (required)\nYou must specify either a string representation of a\nnumerical account identifier or the `-` character\nto list all the client users for all the clients\nof a given sponsor buyer.",
+ "location": "path",
+ "required": true,
+ "type": "string"
+ },
+ "pageToken": {
+ "description": "A token identifying a page of results the server should return.\nTypically, this is the value of\nListClientUsersResponse.nextPageToken\nreturned from the previous call to the\naccounts.clients.users.list method.",
+ "location": "query",
+ "type": "string"
+ },
+ "accountId": {
+ "description": "Numerical account ID of the sponsor buyer of the client to list users for.\n(required)",
+ "format": "int64",
+ "location": "path",
+ "required": true,
+ "type": "string"
+ },
+ "pageSize": {
+ "description": "Requested page size. The server may return fewer clients than requested.\nIf unspecified, the server will pick an appropriate default.",
+ "format": "int32",
+ "location": "query",
+ "type": "integer"
+ }
+ },
+ "path": "v2beta1/accounts/{accountId}/clients/{clientAccountId}/users",
+ "response": {
+ "$ref": "ListClientUsersResponse"
},
"scopes": [
"https://www.googleapis.com/auth/adexchange.buyer"
]
},
- "remove": {
- "description": "Remove the association between a deal and a creative.",
- "httpMethod": "POST",
- "id": "adexchangebuyer2.accounts.creatives.dealAssociations.remove",
+ "get": {
+ "description": "Retrieves an existing client user.",
+ "httpMethod": "GET",
+ "id": "adexchangebuyer2.accounts.clients.users.get",
"parameterOrder": [
"accountId",
- "creativeId"
+ "clientAccountId",
+ "userId"
],
"parameters": {
+ "userId": {
+ "description": "Numerical identifier of the user to retrieve. (required)",
+ "format": "int64",
+ "location": "path",
+ "required": true,
+ "type": "string"
+ },
"accountId": {
- "description": "The account the creative belongs to.",
+ "description": "Numerical account ID of the client's sponsor buyer. (required)",
+ "format": "int64",
"location": "path",
"required": true,
"type": "string"
},
- "creativeId": {
- "description": "The ID of the creative associated with the deal.",
+ "clientAccountId": {
+ "description": "Numerical account ID of the client buyer\nthat the user to be retrieved is associated with. (required)",
+ "format": "int64",
"location": "path",
"required": true,
"type": "string"
}
},
- "path": "v2beta1/accounts/{accountId}/creatives/{creativeId}/dealAssociations:remove",
+ "path": "v2beta1/accounts/{accountId}/clients/{clientAccountId}/users/{userId}",
+ "response": {
+ "$ref": "ClientUser"
+ },
+ "scopes": [
+ "https://www.googleapis.com/auth/adexchange.buyer"
+ ]
+ },
+ "update": {
+ "description": "Updates an existing client user.\nOnly the user status can be changed on update.",
+ "httpMethod": "PUT",
+ "id": "adexchangebuyer2.accounts.clients.users.update",
+ "parameterOrder": [
+ "accountId",
+ "clientAccountId",
+ "userId"
+ ],
+ "parameters": {
+ "userId": {
+ "description": "Numerical identifier of the user to retrieve. (required)",
+ "format": "int64",
+ "location": "path",
+ "required": true,
+ "type": "string"
+ },
+ "accountId": {
+ "description": "Numerical account ID of the client's sponsor buyer. (required)",
+ "format": "int64",
+ "location": "path",
+ "required": true,
+ "type": "string"
+ },
+ "clientAccountId": {
+ "description": "Numerical account ID of the client buyer that the user to be retrieved\nis associated with. (required)",
+ "format": "int64",
+ "location": "path",
+ "required": true,
+ "type": "string"
+ }
+ },
+ "path": "v2beta1/accounts/{accountId}/clients/{clientAccountId}/users/{userId}",
"request": {
- "$ref": "RemoveDealAssociationRequest"
+ "$ref": "ClientUser"
},
"response": {
- "$ref": "Empty"
+ "$ref": "ClientUser"
},
"scopes": [
"https://www.googleapis.com/auth/adexchange.buyer"
@@ -825,839 +1189,1694 @@
}
}
}
- }
- }
- }
- },
- "revision": "20170519",
- "rootUrl": "https://adexchangebuyer.googleapis.com/",
- "schemas": {
- "Empty": {
- "description": "A generic empty message that you can re-use to avoid defining duplicated\nempty messages in your APIs. A typical example is to use it as the request\nor the response type of an API method. For instance:\n\n service Foo {\n rpc Bar(google.protobuf.Empty) returns (google.protobuf.Empty);\n }\n\nThe JSON representation for `Empty` is empty JSON object `{}`.",
- "id": "Empty",
- "properties": {},
- "type": "object"
- },
- "WatchCreativeRequest": {
- "description": "A request for watching changes to creative Status.",
- "id": "WatchCreativeRequest",
- "properties": {
- "topic": {
- "description": "The Pub/Sub topic to publish notifications to.\nThis topic must already exist and must give permission to\nad-exchange-buyside-reports@google.com to write to the topic.\nThis should be the full resource name in\n\"projects/{project_id}/topics/{topic_id}\" format.",
- "type": "string"
- }
- },
- "type": "object"
- },
- "AppContext": {
- "description": "@OutputOnly The app type the restriction applies to for mobile device.",
- "id": "AppContext",
+ },
+ "creatives": {
+ "methods": {
+ "list": {
+ "description": "Lists creatives.",
+ "httpMethod": "GET",
+ "id": "adexchangebuyer2.accounts.creatives.list",
+ "parameterOrder": [
+ "accountId"
+ ],
+ "parameters": {
+ "pageToken": {
+ "description": "A token identifying a page of results the server should return.\nTypically, this is the value of\nListCreativesResponse.next_page_token\nreturned from the previous call to 'ListCreatives' method.",
+ "location": "query",
+ "type": "string"
+ },
+ "accountId": {
+ "description": "The account to list the creatives from.\nSpecify \"-\" to list all creatives the current user has access to.",
+ "location": "path",
+ "required": true,
+ "type": "string"
+ },
+ "pageSize": {
+ "description": "Requested page size. The server may return fewer creatives than requested\n(due to timeout constraint) even if more are available via another call.\nIf unspecified, server will pick an appropriate default.\nAcceptable values are 1 to 1000, inclusive.",
+ "format": "int32",
+ "location": "query",
+ "type": "integer"
+ },
+ "query": {
+ "description": "An optional query string to filter creatives. If no filter is specified,\nall active creatives will be returned.\nSupported queries are:\n<ul>\n<li>accountId=<i>account_id_string</i>\n<li>creativeId=<i>creative_id_string</i>\n<li>dealsStatus: {approved, conditionally_approved, disapproved,\n not_checked}\n<li>openAuctionStatus: {approved, conditionally_approved, disapproved,\n not_checked}\n<li>attribute: {a numeric attribute from the list of attributes}\n<li>disapprovalReason: {a reason from DisapprovalReason\n</ul>\nExample: 'accountId=12345 AND (dealsStatus:disapproved AND disapprovalReason:unacceptable_content) OR attribute:47'",
+ "location": "query",
+ "type": "string"
+ }
+ },
+ "path": "v2beta1/accounts/{accountId}/creatives",
+ "response": {
+ "$ref": "ListCreativesResponse"
+ },
+ "scopes": [
+ "https://www.googleapis.com/auth/adexchange.buyer"
+ ]
+ },
+ "create": {
+ "description": "Creates a creative.",
+ "httpMethod": "POST",
+ "id": "adexchangebuyer2.accounts.creatives.create",
+ "parameterOrder": [
+ "accountId"
+ ],
+ "parameters": {
+ "duplicateIdMode": {
+ "description": "Indicates if multiple creatives can share an ID or not. Default is\nNO_DUPLICATES (one ID per creative).",
+ "enum": [
+ "NO_DUPLICATES",
+ "FORCE_ENABLE_DUPLICATE_IDS"
+ ],
+ "location": "query",
+ "type": "string"
+ },
+ "accountId": {
+ "description": "The account that this creative belongs to.\nCan be used to filter the response of the\ncreatives.list\nmethod.",
+ "location": "path",
+ "required": true,
+ "type": "string"
+ }
+ },
+ "path": "v2beta1/accounts/{accountId}/creatives",
+ "request": {
+ "$ref": "Creative"
+ },
+ "response": {
+ "$ref": "Creative"
+ },
+ "scopes": [
+ "https://www.googleapis.com/auth/adexchange.buyer"
+ ]
+ },
+ "stopWatching": {
+ "description": "Stops watching a creative. Will stop push notifications being sent to the\ntopics when the creative changes status.",
+ "httpMethod": "POST",
+ "id": "adexchangebuyer2.accounts.creatives.stopWatching",
+ "parameterOrder": [
+ "accountId",
+ "creativeId"
+ ],
+ "parameters": {
+ "creativeId": {
+ "description": "The creative ID of the creative to stop notifications for.\nSpecify \"-\" to specify stopping account level notifications.",
+ "location": "path",
+ "required": true,
+ "type": "string"
+ },
+ "accountId": {
+ "description": "The account of the creative to stop notifications for.",
+ "location": "path",
+ "required": true,
+ "type": "string"
+ }
+ },
+ "path": "v2beta1/accounts/{accountId}/creatives/{creativeId}:stopWatching",
+ "request": {
+ "$ref": "StopWatchingCreativeRequest"
+ },
+ "response": {
+ "$ref": "Empty"
+ },
+ "scopes": [
+ "https://www.googleapis.com/auth/adexchange.buyer"
+ ]
+ },
+ "get": {
+ "description": "Gets a creative.",
+ "httpMethod": "GET",
+ "id": "adexchangebuyer2.accounts.creatives.get",
+ "parameterOrder": [
+ "accountId",
+ "creativeId"
+ ],
+ "parameters": {
+ "accountId": {
+ "description": "The account the creative belongs to.",
+ "location": "path",
+ "required": true,
+ "type": "string"
+ },
+ "creativeId": {
+ "description": "The ID of the creative to retrieve.",
+ "location": "path",
+ "required": true,
+ "type": "string"
+ }
+ },
+ "path": "v2beta1/accounts/{accountId}/creatives/{creativeId}",
+ "response": {
+ "$ref": "Creative"
+ },
+ "scopes": [
+ "https://www.googleapis.com/auth/adexchange.buyer"
+ ]
+ },
+ "watch": {
+ "description": "Watches a creative. Will result in push notifications being sent to the\ntopic when the creative changes status.",
+ "httpMethod": "POST",
+ "id": "adexchangebuyer2.accounts.creatives.watch",
+ "parameterOrder": [
+ "accountId",
+ "creativeId"
+ ],
+ "parameters": {
+ "accountId": {
+ "description": "The account of the creative to watch.",
+ "location": "path",
+ "required": true,
+ "type": "string"
+ },
+ "creativeId": {
+ "description": "The creative ID to watch for status changes.\nSpecify \"-\" to watch all creatives under the above account.\nIf both creative-level and account-level notifications are\nsent, only a single notification will be sent to the\ncreative-level notification topic.",
+ "location": "path",
+ "required": true,
+ "type": "string"
+ }
+ },
+ "path": "v2beta1/accounts/{accountId}/creatives/{creativeId}:watch",
+ "request": {
+ "$ref": "WatchCreativeRequest"
+ },
+ "response": {
+ "$ref": "Empty"
+ },
+ "scopes": [
+ "https://www.googleapis.com/auth/adexchange.buyer"
+ ]
+ },
+ "update": {
+ "description": "Updates a creative.",
+ "httpMethod": "PUT",
+ "id": "adexchangebuyer2.accounts.creatives.update",
+ "parameterOrder": [
+ "accountId",
+ "creativeId"
+ ],
+ "parameters": {
+ "accountId": {
+ "description": "The account that this creative belongs to.\nCan be used to filter the response of the\ncreatives.list\nmethod.",
+ "location": "path",
+ "required": true,
+ "type": "string"
+ },
+ "creativeId": {
+ "description": "The buyer-defined creative ID of this creative.\nCan be used to filter the response of the\ncreatives.list\nmethod.",
+ "location": "path",
+ "required": true,
+ "type": "string"
+ }
+ },
+ "path": "v2beta1/accounts/{accountId}/creatives/{creativeId}",
+ "request": {
+ "$ref": "Creative"
+ },
+ "response": {
+ "$ref": "Creative"
+ },
+ "scopes": [
+ "https://www.googleapis.com/auth/adexchange.buyer"
+ ]
+ }
+ },
+ "resources": {
+ "dealAssociations": {
+ "methods": {
+ "add": {
+ "description": "Associate an existing deal with a creative.",
+ "httpMethod": "POST",
+ "id": "adexchangebuyer2.accounts.creatives.dealAssociations.add",
+ "parameterOrder": [
+ "accountId",
+ "creativeId"
+ ],
+ "parameters": {
+ "accountId": {
+ "description": "The account the creative belongs to.",
+ "location": "path",
+ "required": true,
+ "type": "string"
+ },
+ "creativeId": {
+ "description": "The ID of the creative associated with the deal.",
+ "location": "path",
+ "required": true,
+ "type": "string"
+ }
+ },
+ "path": "v2beta1/accounts/{accountId}/creatives/{creativeId}/dealAssociations:add",
+ "request": {
+ "$ref": "AddDealAssociationRequest"
+ },
+ "response": {
+ "$ref": "Empty"
+ },
+ "scopes": [
+ "https://www.googleapis.com/auth/adexchange.buyer"
+ ]
+ },
+ "remove": {
+ "description": "Remove the association between a deal and a creative.",
+ "httpMethod": "POST",
+ "id": "adexchangebuyer2.accounts.creatives.dealAssociations.remove",
+ "parameterOrder": [
+ "accountId",
+ "creativeId"
+ ],
+ "parameters": {
+ "accountId": {
+ "description": "The account the creative belongs to.",
+ "location": "path",
+ "required": true,
+ "type": "string"
+ },
+ "creativeId": {
+ "description": "The ID of the creative associated with the deal.",
+ "location": "path",
+ "required": true,
+ "type": "string"
+ }
+ },
+ "path": "v2beta1/accounts/{accountId}/creatives/{creativeId}/dealAssociations:remove",
+ "request": {
+ "$ref": "RemoveDealAssociationRequest"
+ },
+ "response": {
+ "$ref": "Empty"
+ },
+ "scopes": [
+ "https://www.googleapis.com/auth/adexchange.buyer"
+ ]
+ },
+ "list": {
+ "description": "List all creative-deal associations.",
+ "httpMethod": "GET",
+ "id": "adexchangebuyer2.accounts.creatives.dealAssociations.list",
+ "parameterOrder": [
+ "accountId",
+ "creativeId"
+ ],
+ "parameters": {
+ "creativeId": {
+ "description": "The creative ID to list the associations from.\nSpecify \"-\" to list all creatives under the above account.",
+ "location": "path",
+ "required": true,
+ "type": "string"
+ },
+ "pageToken": {
+ "description": "A token identifying a page of results the server should return.\nTypically, this is the value of\nListDealAssociationsResponse.next_page_token\nreturned from the previous call to 'ListDealAssociations' method.",
+ "location": "query",
+ "type": "string"
+ },
+ "accountId": {
+ "description": "The account to list the associations from.\nSpecify \"-\" to list all creatives the current user has access to.",
+ "location": "path",
+ "required": true,
+ "type": "string"
+ },
+ "pageSize": {
+ "description": "Requested page size. Server may return fewer associations than requested.\nIf unspecified, server will pick an appropriate default.",
+ "format": "int32",
+ "location": "query",
+ "type": "integer"
+ },
+ "query": {
+ "description": "An optional query string to filter deal associations. If no filter is\nspecified, all associations will be returned.\nSupported queries are:\n<ul>\n<li>accountId=<i>account_id_string</i>\n<li>creativeId=<i>creative_id_string</i>\n<li>dealsId=<i>deals_id_string</i>\n<li>dealsStatus:{approved, conditionally_approved, disapproved,\n not_checked}\n<li>openAuctionStatus:{approved, conditionally_approved, disapproved,\n not_checked}\n</ul>\nExample: 'dealsId=12345 AND dealsStatus:disapproved'",
+ "location": "query",
+ "type": "string"
+ }
+ },
+ "path": "v2beta1/accounts/{accountId}/creatives/{creativeId}/dealAssociations",
+ "response": {
+ "$ref": "ListDealAssociationsResponse"
+ },
+ "scopes": [
+ "https://www.googleapis.com/auth/adexchange.buyer"
+ ]
+ }
+ }
+ }
+ }
+ }
+ }
+ }
+ },
+ "revision": "20170608",
+ "rootUrl": "https://adexchangebuyer.googleapis.com/",
+ "schemas": {
+ "ClientUser": {
+ "description": "A client user is created under a client buyer and has restricted access to\nthe Ad Exchange Marketplace and certain other sections\nof the Ad Exchange Buyer UI based on the role\ngranted to the associated client buyer.\n\nThe only way a new client user can be created is via accepting an\nemail invitation\n(see the\naccounts.clients.invitations.create\nmethod).\n\nAll fields are required unless otherwise specified.",
+ "id": "ClientUser",
"properties": {
- "appTypes": {
- "description": "The app types this restriction applies to.",
+ "userId": {
+ "description": "The unique numerical ID of the client user\nthat has accepted an invitation.\nThe value of this field is ignored in an update operation.",
+ "format": "int64",
+ "type": "string"
+ },
+ "email": {
+ "description": "User's email address. The value of this field\nis ignored in an update operation.",
+ "type": "string"
+ },
+ "clientAccountId": {
+ "description": "Numerical account ID of the client buyer\nwith which the user is associated; the\nbuyer must be a client of the current sponsor buyer.\nThe value of this field is ignored in an update operation.",
+ "format": "int64",
+ "type": "string"
+ },
+ "status": {
+ "description": "The status of the client user.",
+ "enum": [
+ "USER_STATUS_UNSPECIFIED",
+ "PENDING",
+ "ACTIVE",
+ "DISABLED"
+ ],
"enumDescriptions": [
- "Native app context.",
- "Mobile web app context."
+ "A placeholder for an undefined user status.",
+ "A user who was already created but hasn't accepted the invitation yet.",
+ "A user that is currently active.",
+ "A user that is currently disabled."
],
+ "type": "string"
+ }
+ },
+ "type": "object"
+ },
+ "CreativeDealAssociation": {
+ "description": "The association between a creative and a deal.",
+ "id": "CreativeDealAssociation",
+ "properties": {
+ "creativeId": {
+ "description": "The ID of the creative associated with the deal.",
+ "type": "string"
+ },
+ "dealsId": {
+ "description": "The externalDealId for the deal associated with the creative.",
+ "type": "string"
+ },
+ "accountId": {
+ "description": "The account the creative belongs to.",
+ "type": "string"
+ }
+ },
+ "type": "object"
+ },
+ "FilteringStats": {
+ "description": "@OutputOnly Filtering reasons for this creative during a period of a single\nday (from midnight to midnight Pacific).",
+ "id": "FilteringStats",
+ "properties": {
+ "reasons": {
+ "description": "The set of filtering reasons for this date.",
"items": {
- "enum": [
- "NATIVE",
- "WEB"
- ],
- "type": "string"
+ "$ref": "Reason"
},
"type": "array"
+ },
+ "date": {
+ "$ref": "Date",
+ "description": "The day during which the data was collected.\nThe data is collected from 00:00:00 to 23:59:59 PT.\nDuring switches from PST to PDT and back, the day may\ncontain 23 or 25 hours of data instead of the usual 24."
}
},
"type": "object"
},
- "NativeContent": {
- "description": "Native content for a creative.",
- "id": "NativeContent",
+ "Creative": {
+ "description": "A creative and its classification data.",
+ "id": "Creative",
"properties": {
- "appIcon": {
- "$ref": "Image",
- "description": "The app icon, for app download ads."
+ "dealsStatus": {
+ "description": "@OutputOnly The top-level deals status of this creative.\nIf disapproved, an entry for 'auctionType=DIRECT_DEALS' (or 'ALL') in\nserving_restrictions will also exist. Note\nthat this may be nuanced with other contextual restrictions, in which case,\nit may be preferable to read from serving_restrictions directly.\nCan be used to filter the response of the\ncreatives.list\nmethod.",
+ "enum": [
+ "STATUS_UNSPECIFIED",
+ "NOT_CHECKED",
+ "CONDITIONALLY_APPROVED",
+ "APPROVED",
+ "DISAPPROVED"
+ ],
+ "enumDescriptions": [
+ "The status is unknown.",
+ "The creative has not been checked.",
+ "The creative has been conditionally approved.\nSee serving_restrictions for details.",
+ "The creative has been approved.",
+ "The creative has been disapproved."
+ ],
+ "type": "string"
},
- "callToAction": {
- "description": "A label for the button that the user is supposed to click.",
+ "detectedProductCategories": {
+ "description": "@OutputOnly Detected product categories, if any.\nSee the ad-product-categories.txt file in the technical documentation\nfor a list of IDs.",
+ "items": {
+ "format": "int32",
+ "type": "integer"
+ },
+ "type": "array"
+ },
+ "openAuctionStatus": {
+ "description": "@OutputOnly The top-level open auction status of this creative.\nIf disapproved, an entry for 'auctionType = OPEN_AUCTION' (or 'ALL') in\nserving_restrictions will also exist. Note\nthat this may be nuanced with other contextual restrictions, in which case,\nit may be preferable to read from serving_restrictions directly.\nCan be used to filter the response of the\ncreatives.list\nmethod.",
+ "enum": [
+ "STATUS_UNSPECIFIED",
+ "NOT_CHECKED",
+ "CONDITIONALLY_APPROVED",
+ "APPROVED",
+ "DISAPPROVED"
+ ],
+ "enumDescriptions": [
+ "The status is unknown.",
+ "The creative has not been checked.",
+ "The creative has been conditionally approved.\nSee serving_restrictions for details.",
+ "The creative has been approved.",
+ "The creative has been disapproved."
+ ],
"type": "string"
},
- "body": {
- "description": "A long description of the ad.",
+ "advertiserName": {
+ "description": "The name of the company being advertised in the creative.",
"type": "string"
},
- "starRating": {
- "description": "The app rating in the app store. Must be in the range [0-5].",
- "format": "double",
- "type": "number"
+ "detectedDomains": {
+ "description": "@OutputOnly\nThe detected domains for this creative.",
+ "items": {
+ "type": "string"
+ },
+ "type": "array"
},
- "videoUrl": {
- "description": "The URL to fetch a native video ad.",
+ "detectedAdvertiserIds": {
+ "description": "@OutputOnly Detected advertiser IDs, if any.",
+ "items": {
+ "format": "int64",
+ "type": "string"
+ },
+ "type": "array"
+ },
+ "filteringStats": {
+ "$ref": "FilteringStats",
+ "description": "@OutputOnly The filtering stats for this creative."
+ },
+ "attributes": {
+ "description": "All attributes for the ads that may be shown from this creative.\nCan be used to filter the response of the\ncreatives.list\nmethod.",
+ "enumDescriptions": [
+ "Do not use. This is a placeholder value only.",
+ "The creative is tagged.",
+ "The creative is cookie targeted.",
+ "The creative is user interest targeted.",
+ "The creative does not expand.",
+ "The creative expands up.",
+ "The creative expands down.",
+ "The creative expands left.",
+ "The creative expands right.",
+ "The creative expands up and left.",
+ "The creative expands up and right.",
+ "The creative expands down and left.",
+ "The creative expands down and right.",
+ "The creative expands up or down.",
+ "The creative expands left or right.",
+ "The creative expands on any diagonal.",
+ "The creative expands when rolled over.",
+ "The instream vast video type is vpaid flash.",
+ "The creative is MRAID",
+ "The creative is SSL.",
+ "The creative is an interstitial.",
+ "The creative is eligible for native.",
+ "The creative is not eligible for native.",
+ "The creative can dynamically resize to fill a variety of slot sizes."
+ ],
+ "items": {
+ "enum": [
+ "ATTRIBUTE_UNSPECIFIED",
+ "IS_TAGGED",
+ "IS_COOKIE_TARGETED",
+ "IS_USER_INTEREST_TARGETED",
+ "EXPANDING_DIRECTION_NONE",
+ "EXPANDING_DIRECTION_UP",
+ "EXPANDING_DIRECTION_DOWN",
+ "EXPANDING_DIRECTION_LEFT",
+ "EXPANDING_DIRECTION_RIGHT",
+ "EXPANDING_DIRECTION_UP_LEFT",
+ "EXPANDING_DIRECTION_UP_RIGHT",
+ "EXPANDING_DIRECTION_DOWN_LEFT",
+ "EXPANDING_DIRECTION_DOWN_RIGHT",
+ "EXPANDING_DIRECTION_UP_OR_DOWN",
+ "EXPANDING_DIRECTION_LEFT_OR_RIGHT",
+ "EXPANDING_DIRECTION_ANY_DIAGONAL",
+ "EXPANDING_ACTION_ROLLOVER_TO_EXPAND",
+ "INSTREAM_VAST_VIDEO_TYPE_VPAID_FLASH",
+ "RICH_MEDIA_CAPABILITY_TYPE_MRAID",
+ "RICH_MEDIA_CAPABILITY_TYPE_SSL",
+ "RICH_MEDIA_CAPABILITY_TYPE_INTERSTITIAL",
+ "NATIVE_ELIGIBILITY_ELIGIBLE",
+ "NATIVE_ELIGIBILITY_NOT_ELIGIBLE",
+ "RENDERING_SIZELESS_ADX"
+ ],
+ "type": "string"
+ },
+ "type": "array"
+ },
+ "apiUpdateTime": {
+ "description": "@OutputOnly The last update timestamp of the creative via API.",
+ "format": "google-datetime",
"type": "string"
},
- "logo": {
- "$ref": "Image",
- "description": "A smaller image, for the advertiser's logo."
+ "detectedLanguages": {
+ "description": "@OutputOnly\nThe detected languages for this creative. The order is arbitrary. The codes\nare 2 or 5 characters and are documented at\nhttps://developers.google.com/adwords/api/docs/appendix/languagecodes.",
+ "items": {
+ "type": "string"
+ },
+ "type": "array"
},
- "clickLinkUrl": {
- "description": "The URL that the browser/SDK will load when the user clicks the ad.",
+ "creativeId": {
+ "description": "The buyer-defined creative ID of this creative.\nCan be used to filter the response of the\ncreatives.list\nmethod.",
"type": "string"
},
- "priceDisplayText": {
- "description": "The price of the promoted app including currency info.",
+ "accountId": {
+ "description": "The account that this creative belongs to.\nCan be used to filter the response of the\ncreatives.list\nmethod.",
"type": "string"
},
- "clickTrackingUrl": {
- "description": "The URL to use for click tracking.",
- "type": "string"
+ "native": {
+ "$ref": "NativeContent",
+ "description": "A native creative."
},
- "image": {
- "$ref": "Image",
- "description": "A large image."
+ "video": {
+ "$ref": "VideoContent",
+ "description": "A video creative."
},
- "advertiserName": {
- "description": "The name of the advertiser or sponsor, to be displayed in the ad creative.",
- "type": "string"
+ "servingRestrictions": {
+ "description": "@OutputOnly The granular status of this ad in specific contexts.\nA context here relates to where something ultimately serves (for example,\na physical location, a platform, an HTTPS vs HTTP request, or the type\nof auction).",
+ "items": {
+ "$ref": "ServingRestriction"
+ },
+ "type": "array"
},
- "storeUrl": {
- "description": "The URL to the app store to purchase/download the promoted app.",
+ "agencyId": {
+ "description": "The agency ID for this creative.",
+ "format": "int64",
"type": "string"
},
- "headline": {
- "description": "A short title for the ad.",
- "type": "string"
- }
- },
- "type": "object"
- },
- "ListClientsResponse": {
- "id": "ListClientsResponse",
- "properties": {
- "nextPageToken": {
- "description": "A token to retrieve the next page of results.\nPass this value in the\nListClientsRequest.pageToken\nfield in the subsequent call to the\naccounts.clients.list method\nto retrieve the next page of results.",
+ "clickThroughUrls": {
+ "description": "The set of destination URLs for the creative.",
+ "items": {
+ "type": "string"
+ },
+ "type": "array"
+ },
+ "adChoicesDestinationUrl": {
+ "description": "The link to AdChoices destination page.",
"type": "string"
},
- "clients": {
- "description": "The returned list of clients.",
+ "detectedSensitiveCategories": {
+ "description": "@OutputOnly Detected sensitive categories, if any.\nSee the ad-sensitive-categories.txt file in the technical documentation for\na list of IDs. You should use these IDs along with the\nexcluded-sensitive-category field in the bid request to filter your bids.",
"items": {
- "$ref": "Client"
+ "format": "int32",
+ "type": "integer"
},
"type": "array"
- }
- },
- "type": "object"
- },
- "SecurityContext": {
- "description": "@OutputOnly A security context.",
- "id": "SecurityContext",
- "properties": {
- "securities": {
- "description": "The security types in this context.",
+ },
+ "restrictedCategories": {
+ "description": "All restricted categories for the ads that may be shown from this creative.",
"enumDescriptions": [
- "Matches impressions that require insecure compatibility.",
- "Matches impressions that require SSL compatibility."
+ "The ad has no restricted categories",
+ "The alcohol restricted category."
],
"items": {
"enum": [
- "INSECURE",
- "SSL"
+ "NO_RESTRICTED_CATEGORIES",
+ "ALCOHOL"
],
"type": "string"
},
"type": "array"
- }
- },
- "type": "object"
- },
- "HtmlContent": {
- "description": "HTML content for a creative.",
- "id": "HtmlContent",
- "properties": {
- "height": {
- "description": "The height of the HTML snippet in pixels.",
- "format": "int32",
- "type": "integer"
},
- "width": {
- "description": "The width of the HTML snippet in pixels.",
+ "corrections": {
+ "description": "@OutputOnly Shows any corrections that were applied to this creative.",
+ "items": {
+ "$ref": "Correction"
+ },
+ "type": "array"
+ },
+ "version": {
+ "description": "@OutputOnly The version of this creative.",
"format": "int32",
"type": "integer"
},
- "snippet": {
- "description": "The HTML snippet that displays the ad when inserted in the web page.",
- "type": "string"
+ "vendorIds": {
+ "description": "All vendor IDs for the ads that may be shown from this creative.\nSee https://storage.googleapis.com/adx-rtb-dictionaries/vendors.txt\nfor possible values.",
+ "items": {
+ "format": "int32",
+ "type": "integer"
+ },
+ "type": "array"
+ },
+ "impressionTrackingUrls": {
+ "description": "The set of URLs to be called to record an impression.",
+ "items": {
+ "type": "string"
+ },
+ "type": "array"
+ },
+ "html": {
+ "$ref": "HtmlContent",
+ "description": "An HTML creative."
}
},
"type": "object"
},
- "ListCreativesResponse": {
- "description": "A response for listing creatives.",
- "id": "ListCreativesResponse",
+ "ListFilteredImpressionsResponse": {
+ "description": "Response message for listing all reasons that impressions were filtered (i.e.\nnot considered as an inventory match) for the buyer.",
+ "id": "ListFilteredImpressionsResponse",
"properties": {
"nextPageToken": {
- "description": "A token to retrieve the next page of results.\nPass this value in the\nListCreativesRequest.page_token\nfield in the subsequent call to `ListCreatives` method to retrieve the next\npage of results.",
+ "description": "A token to retrieve the next page of results.\nPass this value in the\nListFilteredImpressionsRequest.pageToken\nfield in the subsequent call to the\naccounts.filterSets.filteredImpressions.list\nmethod to retrieve the next page of results.",
"type": "string"
},
- "creatives": {
- "description": "The list of creatives.",
+ "impressionsStatusRows": {
+ "description": "List of rows, with counts of filtered impressions aggregated by status.",
"items": {
- "$ref": "Creative"
+ "$ref": "ImpressionStatusRow"
},
"type": "array"
}
},
"type": "object"
},
- "ServingContext": {
- "description": "The serving context for this restriction.",
- "id": "ServingContext",
+ "RemoveDealAssociationRequest": {
+ "description": "A request for removing the association between a deal and a creative.",
+ "id": "RemoveDealAssociationRequest",
"properties": {
- "location": {
- "$ref": "LocationContext",
- "description": "Matches impressions coming from users *or* publishers in a specific\nlocation."
- },
- "auctionType": {
- "$ref": "AuctionContext",
- "description": "Matches impressions for a particular auction type."
- },
- "all": {
- "description": "Matches all contexts.",
- "enum": [
- "SIMPLE_CONTEXT"
- ],
- "enumDescriptions": [
- "A simple context."
- ],
- "type": "string"
- },
- "appType": {
- "$ref": "AppContext",
- "description": "Matches impressions for a particular app type."
- },
- "securityType": {
- "$ref": "SecurityContext",
- "description": "Matches impressions for a particular security type."
- },
- "platform": {
- "$ref": "PlatformContext",
- "description": "Matches impressions coming from a particular platform."
+ "association": {
+ "$ref": "CreativeDealAssociation",
+ "description": "The association between a creative and a deal that should be removed."
}
},
"type": "object"
},
- "Image": {
- "description": "An image resource. You may provide a larger image than was requested,\nso long as the aspect ratio is preserved.",
- "id": "Image",
+ "ListCreativeStatusBreakdownByCreativeResponse": {
+ "description": "Response message for listing all creatives associated with a given filtered\nbid reason.",
+ "id": "ListCreativeStatusBreakdownByCreativeResponse",
"properties": {
- "height": {
- "description": "Image height in pixels.",
- "format": "int32",
- "type": "integer"
- },
- "width": {
- "description": "Image width in pixels.",
- "format": "int32",
- "type": "integer"
- },
- "url": {
- "description": "The URL of the image.",
+ "nextPageToken": {
+ "description": "A token to retrieve the next page of results.\nPass this value in the\nListCreativeStatusBreakdownByCreativeRequest.pageToken\nfield in the subsequent call to the\naccounts.filterSets.filteredBids.creatives.list\nmethod to retrieve the next page of results.",
"type": "string"
+ },
+ "filteredBidCreativeRows": {
+ "description": "List of rows, with counts of bids with a given creative status aggregated\nby creative.",
+ "items": {
+ "$ref": "FilteredBidCreativeRow"
+ },
+ "type": "array"
}
},
"type": "object"
},
- "Reason": {
- "description": "A specific filtering status and how many times it occurred.",
- "id": "Reason",
+ "Client": {
+ "description": "A client resource represents a client buyer&mdash;an agency,\na brand, or an advertiser customer of the sponsor buyer.\nUsers associated with the client buyer have restricted access to\nthe Ad Exchange Marketplace and certain other sections\nof the Ad Exchange Buyer UI based on the role\ngranted to the client buyer.\nAll fields are required unless otherwise specified.",
+ "id": "Client",
"properties": {
"status": {
- "description": "The filtering status code. Please refer to the\n[creative-status-codes.txt](https://storage.googleapis.com/adx-rtb-dictionaries/creative-status-codes.txt)\nfile for different statuses.",
- "format": "int32",
- "type": "integer"
+ "description": "The status of the client buyer.",
+ "enum": [
+ "CLIENT_STATUS_UNSPECIFIED",
+ "DISABLED",
+ "ACTIVE"
+ ],
+ "enumDescriptions": [
+ "A placeholder for an undefined client status.",
+ "A client that is currently disabled.",
+ "A client that is currently active."
+ ],
+ "type": "string"
+ },
+ "entityType": {
+ "description": "The type of the client entity: `ADVERTISER`, `BRAND`, or `AGENCY`.",
+ "enum": [
+ "ENTITY_TYPE_UNSPECIFIED",
+ "ADVERTISER",
+ "BRAND",
+ "AGENCY"
+ ],
+ "enumDescriptions": [
+ "A placeholder for an undefined client entity type. Should not be used.",
+ "An advertiser.",
+ "A brand.",
+ "An advertising agency."
+ ],
+ "type": "string"
+ },
+ "clientName": {
+ "description": "Name used to represent this client to publishers.\nYou may have multiple clients that map to the same entity,\nbut for each client the combination of `clientName` and entity\nmust be unique.\nYou can specify this field as empty.",
+ "type": "string"
+ },
+ "role": {
+ "description": "The role which is assigned to the client buyer. Each role implies a set of\npermissions granted to the client. Must be one of `CLIENT_DEAL_VIEWER`,\n`CLIENT_DEAL_NEGOTIATOR` or `CLIENT_DEAL_APPROVER`.",
+ "enum": [
+ "CLIENT_ROLE_UNSPECIFIED",
+ "CLIENT_DEAL_VIEWER",
+ "CLIENT_DEAL_NEGOTIATOR",
+ "CLIENT_DEAL_APPROVER"
+ ],
+ "enumDescriptions": [
+ "A placeholder for an undefined client role.",
+ "Users associated with this client can see publisher deal offers\nin the Marketplace.\nThey can neither negotiate proposals nor approve deals.\nIf this client is visible to publishers, they can send deal proposals\nto this client.",
+ "Users associated with this client can respond to deal proposals\nsent to them by publishers. They can also initiate deal proposals\nof their own.",
+ "Users associated with this client can approve eligible deals\non your behalf. Some deals may still explicitly require publisher\nfinalization. If this role is not selected, the sponsor buyer\nwill need to manually approve each of their deals."
+ ],
+ "type": "string"
+ },
+ "visibleToSeller": {
+ "description": "Whether the client buyer will be visible to sellers.",
+ "type": "boolean"
+ },
+ "entityId": {
+ "description": "Numerical identifier of the client entity.\nThe entity can be an advertiser, a brand, or an agency.\nThis identifier is unique among all the entities with the same type.\n\nA list of all known advertisers with their identifiers is available in the\n[advertisers.txt](https://storage.googleapis.com/adx-rtb-dictionaries/advertisers.txt)\nfile.\n\nA list of all known brands with their identifiers is available in the\n[brands.txt](https://storage.googleapis.com/adx-rtb-dictionaries/brands.txt)\nfile.\n\nA list of all known agencies with their identifiers is available in the\n[agencies.txt](https://storage.googleapis.com/adx-rtb-dictionaries/agencies.txt)\nfile.",
+ "format": "int64",
+ "type": "string"
},
- "count": {
- "description": "The number of times the creative was filtered for the status. The\ncount is aggregated across all publishers on the exchange.",
+ "clientAccountId": {
+ "description": "The globally-unique numerical ID of the client.\nThe value of this field is ignored in create and update operations.",
"format": "int64",
"type": "string"
- }
- },
- "type": "object"
- },
- "VideoContent": {
- "description": "Video content for a creative.",
- "id": "VideoContent",
- "properties": {
- "videoUrl": {
- "description": "The URL to fetch a video ad.",
+ },
+ "entityName": {
+ "description": "The name of the entity. This field is automatically fetched based on\nthe type and ID.\nThe value of this field is ignored in create and update operations.",
"type": "string"
}
},
"type": "object"
},
- "ClientUserInvitation": {
- "description": "An invitation for a new client user to get access to the Ad Exchange\nBuyer UI.\nAll fields are required unless otherwise specified.",
- "id": "ClientUserInvitation",
+ "Correction": {
+ "description": "@OutputOnly Shows any corrections that were applied to this creative.",
+ "id": "Correction",
"properties": {
- "email": {
- "description": "The email address to which the invitation is sent. Email\naddresses should be unique among all client users under each sponsor\nbuyer.",
+ "type": {
+ "description": "The type of correction that was applied to the creative.",
+ "enum": [
+ "CORRECTION_TYPE_UNSPECIFIED",
+ "VENDOR_IDS_ADDED",
+ "SSL_ATTRIBUTE_REMOVED",
+ "FLASH_FREE_ATTRIBUTE_REMOVED",
+ "FLASH_FREE_ATTRIBUTE_ADDED",
+ "REQUIRED_ATTRIBUTE_ADDED",
+ "REQUIRED_VENDOR_ADDED",
+ "SSL_ATTRIBUTE_ADDED",
+ "IN_BANNER_VIDEO_ATTRIBUTE_ADDED",
+ "MRAID_ATTRIBUTE_ADDED",
+ "FLASH_ATTRIBUTE_REMOVED",
+ "VIDEO_IN_SNIPPET_ATTRIBUTE_ADDED"
+ ],
+ "enumDescriptions": [
+ "The correction type is unknown. Refer to the details for more information.",
+ "The ad's declared vendors did not match the vendors that were detected.\nThe detected vendors were added.",
+ "The ad had the SSL attribute declared but was not SSL-compliant.\nThe SSL attribute was removed.",
+ "The ad was declared as Flash-free but contained Flash, so the Flash-free\nattribute was removed.",
+ "The ad was not declared as Flash-free but it did not reference any flash\ncontent, so the Flash-free attribute was added.",
+ "The ad did not declare a required creative attribute.\nThe attribute was added.",
+ "The ad did not declare a required technology vendor.\nThe technology vendor was added.",
+ "The ad did not declare the SSL attribute but was SSL-compliant, so the\nSSL attribute was added.",
+ "Properties consistent with In-banner video were found, so an\nIn-Banner Video attribute was added.",
+ "The ad makes calls to the MRAID API so the MRAID attribute was added.",
+ "The ad unnecessarily declared the Flash attribute, so the Flash attribute\nwas removed.",
+ "The ad contains video content."
+ ],
"type": "string"
},
- "clientAccountId": {
- "description": "Numerical account ID of the client buyer\nthat the invited user is associated with.\nThe value of this field is ignored in create operations.",
- "format": "int64",
- "type": "string"
+ "contexts": {
+ "description": "The contexts for the correction.",
+ "items": {
+ "$ref": "ServingContext"
+ },
+ "type": "array"
},
- "invitationId": {
- "description": "The unique numerical ID of the invitation that is sent to the user.\nThe value of this field is ignored in create operations.",
- "format": "int64",
- "type": "string"
+ "details": {
+ "description": "Additional details about what was corrected.",
+ "items": {
+ "type": "string"
+ },
+ "type": "array"
}
},
"type": "object"
},
- "AuctionContext": {
- "description": "@OutputOnly The auction type the restriction applies to.",
- "id": "AuctionContext",
+ "FilterSet": {
+ "description": "A set of filters that is applied to a request for data.\nWithin a filter set, an AND operation is performed across the filters\nrepresented by each field. An OR operation is performed across the filters\nrepresented by the multiple values of a repeated field. E.g.\n\"format=VIDEO AND deal_id=12 AND (seller_network_id=34 OR\nseller_network_id=56)\"",
+ "id": "FilterSet",
"properties": {
- "auctionTypes": {
- "description": "The auction types this restriction applies to.",
+ "creativeId": {
+ "description": "The ID of the creative on which to filter; optional.",
+ "type": "string"
+ },
+ "relativeDateRange": {
+ "$ref": "RelativeDateRange",
+ "description": "A relative date range, defined by an offset from today and a duration.\nInterpreted relative to Pacific time zone."
+ },
+ "platforms": {
+ "description": "The list of platforms on which to filter; may be empty. The filters\nrepresented by multiple platforms are ORed together (i.e. if non-empty,\nresults must match any one of the platforms).",
"enumDescriptions": [
- "The restriction applies to open auction.",
- "The restriction applies to direct deals."
+ "A placeholder for an undefined platform; indicates that no platform\nfilter will be applied.",
+ "The ad impression appears on a desktop.",
+ "The ad impression appears on a tablet.",
+ "The ad impression appears on a mobile device."
],
"items": {
"enum": [
- "OPEN_AUCTION",
- "DIRECT_DEALS"
+ "PLATFORM_UNSPECIFIED",
+ "DESKTOP",
+ "TABLET",
+ "MOBILE"
],
"type": "string"
},
"type": "array"
- }
- },
- "type": "object"
- },
- "ListClientUsersResponse": {
- "id": "ListClientUsersResponse",
- "properties": {
- "users": {
- "description": "The returned list of client users.",
+ },
+ "sellerNetworkIds": {
+ "description": "The list of IDs of the seller (publisher) networks on which to filter;\nmay be empty. The filters represented by multiple seller network IDs are\nORed together (i.e. if non-empty, results must match any one of the\npublisher networks).\nSee [seller-network-ids](https://developers.google.com/ad-exchange/rtb/downloads/seller-network-ids)\nfile for the set of existing seller network IDs.",
"items": {
- "$ref": "ClientUser"
+ "format": "int32",
+ "type": "integer"
},
"type": "array"
},
- "nextPageToken": {
- "description": "A token to retrieve the next page of results.\nPass this value in the\nListClientUsersRequest.pageToken\nfield in the subsequent call to the\nclients.invitations.list\nmethod to retrieve the next\npage of results.",
+ "ownerAccountId": {
+ "description": "The account ID of the buyer who owns this filter set.\nThe value of this field is ignored in create operations.",
+ "format": "int64",
"type": "string"
- }
- },
- "type": "object"
- },
- "ListClientUserInvitationsResponse": {
- "id": "ListClientUserInvitationsResponse",
- "properties": {
- "nextPageToken": {
- "description": "A token to retrieve the next page of results.\nPass this value in the\nListClientUserInvitationsRequest.pageToken\nfield in the subsequent call to the\nclients.invitations.list\nmethod to retrieve the next\npage of results.",
+ },
+ "absoluteDateRange": {
+ "$ref": "AbsoluteDateRange",
+ "description": "An absolute date range, defined by a start date and an end date.\nInterpreted relative to Pacific time zone."
+ },
+ "buyerAccountId": {
+ "description": "The ID of the buyer account on which to filter; optional.",
+ "format": "int64",
"type": "string"
},
- "invitations": {
- "description": "The returned list of client users.",
- "items": {
- "$ref": "ClientUserInvitation"
- },
- "type": "array"
+ "environment": {
+ "description": "The environment on which to filter; optional.",
+ "enum": [
+ "ENVIRONMENT_UNSPECIFIED",
+ "WEB",
+ "APP"
+ ],
+ "enumDescriptions": [
+ "A placeholder for an undefined environment; indicates that no environment\nfilter will be applied.",
+ "The ad impression appears on the web.",
+ "The ad impression appears in an app."
+ ],
+ "type": "string"
+ },
+ "dealId": {
+ "description": "The ID of the deal on which to filter; optional.",
+ "format": "int64",
+ "type": "string"
+ },
+ "format": {
+ "description": "The format on which to filter; optional.",
+ "enum": [
+ "FORMAT_UNSPECIFIED",
+ "DISPLAY",
+ "VIDEO"
+ ],
+ "enumDescriptions": [
+ "A placeholder for an undefined format; indicates that no format filter\nwill be applied.",
+ "The ad impression is display format (i.e. an image).",
+ "The ad impression is video format."
+ ],
+ "type": "string"
+ },
+ "timeSeriesGranularity": {
+ "description": "The granularity of time intervals if a time series breakdown is desired;\noptional.",
+ "enum": [
+ "INTERVAL_UNSPECIFIED",
+ "HOURLY",
+ "DAILY"
+ ],
+ "enumDescriptions": [
+ "A placeholder for an unspecified interval; no time series is applied.\nAll rows in response will contain data for the entire requested time range.",
+ "Indicates that data will be broken down by the hour.",
+ "Indicates that data will be broken down by the day."
+ ],
+ "type": "string"
+ },
+ "filterSetId": {
+ "description": "The ID of the filter set; unique within the account of the filter set\nowner.\nThe value of this field is ignored in create operations.",
+ "format": "int64",
+ "type": "string"
+ },
+ "realtimeTimeRange": {
+ "$ref": "RealtimeTimeRange",
+ "description": "An open-ended realtime time range, defined by the aggregation start\ntimestamp."
}
},
"type": "object"
},
- "LocationContext": {
- "description": "@OutputOnly The Geo criteria the restriction applies to.",
- "id": "LocationContext",
+ "ListDealAssociationsResponse": {
+ "description": "A response for listing creative and deal associations",
+ "id": "ListDealAssociationsResponse",
"properties": {
- "geoCriteriaIds": {
- "description": "IDs representing the geo location for this context.\nPlease refer to the\n[geo-table.csv](https://storage.googleapis.com/adx-rtb-dictionaries/geo-table.csv)\nfile for different geo criteria IDs.",
+ "associations": {
+ "description": "The list of associations.",
"items": {
- "format": "int32",
- "type": "integer"
+ "$ref": "CreativeDealAssociation"
},
"type": "array"
+ },
+ "nextPageToken": {
+ "description": "A token to retrieve the next page of results.\nPass this value in the\nListDealAssociationsRequest.page_token\nfield in the subsequent call to 'ListDealAssociation' method to retrieve\nthe next page of results.",
+ "type": "string"
}
},
"type": "object"
},
- "PlatformContext": {
- "description": "@OutputOnly The type of platform the restriction applies to.",
- "id": "PlatformContext",
+ "CalloutStatusRow": {
+ "description": "The number of impressions with the specified dimension values where the\ncorresponding bid request or bid response was not successful, as described by\nthe specified callout status.",
+ "id": "CalloutStatusRow",
"properties": {
- "platforms": {
- "description": "The platforms this restriction applies to.",
- "enumDescriptions": [
- "Desktop platform.",
- "Android platform.",
- "iOS platform."
- ],
- "items": {
- "enum": [
- "DESKTOP",
- "ANDROID",
- "IOS"
- ],
- "type": "string"
- },
- "type": "array"
+ "rowDimensions": {
+ "$ref": "RowDimensions",
+ "description": "The values of all dimensions associated with metric values in this row."
+ },
+ "calloutStatusId": {
+ "description": "The ID of the callout status.\nSee [callout-status-codes](https://developers.google.com/ad-exchange/rtb/downloads/callout-status-codes).",
+ "format": "int32",
+ "type": "integer"
+ },
+ "impressionCount": {
+ "$ref": "MetricValue",
+ "description": "The number of impressions for which there was a bid request or bid response\nwith the specified callout status."
}
},
"type": "object"
},
- "ClientUser": {
- "description": "A client user is created under a client buyer and has restricted access to\nthe Ad Exchange Marketplace and certain other sections\nof the Ad Exchange Buyer UI based on the role\ngranted to the associated client buyer.\n\nThe only way a new client user can be created is via accepting an\nemail invitation\n(see the\naccounts.clients.invitations.create\nmethod).\n\nAll fields are required unless otherwise specified.",
- "id": "ClientUser",
+ "Disapproval": {
+ "description": "@OutputOnly The reason and details for a disapproval.",
+ "id": "Disapproval",
"properties": {
- "status": {
- "description": "The status of the client user.",
+ "reason": {
+ "description": "The categorized reason for disapproval.",
"enum": [
- "USER_STATUS_UNSPECIFIED",
- "PENDING",
- "ACTIVE",
- "DISABLED"
+ "LENGTH_OF_IMAGE_ANIMATION",
+ "BROKEN_URL",
+ "MEDIA_NOT_FUNCTIONAL",
+ "INVALID_FOURTH_PARTY_CALL",
+ "INCORRECT_REMARKETING_DECLARATION",
+ "LANDING_PAGE_ERROR",
+ "AD_SIZE_DOES_NOT_MATCH_AD_SLOT",
+ "NO_BORDER",
+ "FOURTH_PARTY_BROWSER_COOKIES",
+ "LSO_OBJECTS",
+ "BLANK_CREATIVE",
+ "DESTINATION_URLS_UNDECLARED",
+ "PROBLEM_WITH_CLICK_MACRO",
+ "INCORRECT_AD_TECHNOLOGY_DECLARATION",
+ "INCORRECT_DESTINATION_URL_DECLARATION",
+ "EXPANDABLE_INCORRECT_DIRECTION",
+ "EXPANDABLE_DIRECTION_NOT_SUPPORTED",
+ "EXPANDABLE_INVALID_VENDOR",
+ "EXPANDABLE_FUNCTIONALITY",
+ "VIDEO_INVALID_VENDOR",
+ "VIDEO_UNSUPPORTED_LENGTH",
+ "VIDEO_UNSUPPORTED_FORMAT",
+ "VIDEO_FUNCTIONALITY",
+ "LANDING_PAGE_DISABLED",
+ "MALWARE_SUSPECTED",
+ "ADULT_IMAGE_OR_VIDEO",
+ "INACCURATE_AD_TEXT",
+ "COUNTERFEIT_DESIGNER_GOODS",
+ "POP_UP",
+ "INVALID_RTB_PROTOCOL_USAGE",
+ "RAW_IP_ADDRESS_IN_SNIPPET",
+ "UNACCEPTABLE_CONTENT_SOFTWARE",
+ "UNAUTHORIZED_COOKIE_ON_GOOGLE_DOMAIN",
+ "UNDECLARED_FLASH_OBJECTS",
+ "INVALID_SSL_DECLARATION",
+ "DIRECT_DOWNLOAD_IN_AD",
+ "MAXIMUM_DOWNLOAD_SIZE_EXCEEDED",
+ "DESTINATION_URL_SITE_NOT_CRAWLABLE",
+ "BAD_URL_LEGAL_DISAPPROVAL",
+ "PHARMA_GAMBLING_ALCOHOL_NOT_ALLOWED",
+ "DYNAMIC_DNS_AT_DESTINATION_URL",
+ "POOR_IMAGE_OR_VIDEO_QUALITY",
+ "UNACCEPTABLE_IMAGE_CONTENT",
+ "INCORRECT_IMAGE_LAYOUT",
+ "IRRELEVANT_IMAGE_OR_VIDEO",
+ "DESTINATION_SITE_DOES_NOT_ALLOW_GOING_BACK",
+ "MISLEADING_CLAIMS_IN_AD",
+ "RESTRICTED_PRODUCTS",
+ "UNACCEPTABLE_CONTENT",
+ "AUTOMATED_AD_CLICKING",
+ "INVALID_URL_PROTOCOL",
+ "UNDECLARED_RESTRICTED_CONTENT",
+ "INVALID_REMARKETING_LIST_USAGE",
+ "DESTINATION_SITE_NOT_CRAWLABLE_ROBOTS_TXT",
+ "CLICK_TO_DOWNLOAD_NOT_AN_APP",
+ "INACCURATE_REVIEW_EXTENSION",
+ "SEXUALLY_EXPLICIT_CONTENT",
+ "GAINING_AN_UNFAIR_ADVANTAGE",
+ "GAMING_THE_GOOGLE_NETWORK",
+ "DANGEROUS_PRODUCTS_KNIVES",
+ "DANGEROUS_PRODUCTS_EXPLOSIVES",
+ "DANGEROUS_PRODUCTS_GUNS",
+ "DANGEROUS_PRODUCTS_DRUGS",
+ "DANGEROUS_PRODUCTS_TOBACCO",
+ "DANGEROUS_PRODUCTS_WEAPONS",
+ "UNCLEAR_OR_IRRELEVANT_AD",
+ "PROFESSIONAL_STANDARDS",
+ "DYSFUNCTIONAL_PROMOTION",
+ "INVALID_INTEREST_BASED_AD",
+ "MISUSE_OF_PERSONAL_INFORMATION",
+ "OMISSION_OF_RELEVANT_INFORMATION",
+ "UNAVAILABLE_PROMOTIONS",
+ "MISLEADING_PROMOTIONS",
+ "INAPPROPRIATE_CONTENT",
+ "SENSITIVE_EVENTS",
+ "SHOCKING_CONTENT",
+ "ENABLING_DISHONEST_BEHAVIOR",
+ "TECHNICAL_REQUIREMENTS",
+ "RESTRICTED_POLITICAL_CONTENT",
+ "UNSUPPORTED_CONTENT",
+ "INVALID_BIDDING_METHOD",
+ "VIDEO_TOO_LONG",
+ "VIOLATES_JAPANESE_PHARMACY_LAW",
+ "UNACCREDITED_PET_PHARMACY",
+ "ABORTION",
+ "CONTRACEPTIVES",
+ "NEED_CERTIFICATES_TO_ADVERTISE_IN_CHINA",
+ "KCDSP_REGISTRATION",
+ "NOT_FAMILY_SAFE",
+ "CLINICAL_TRIAL_RECRUITMENT",
+ "MAXIMUM_NUMBER_OF_HTTP_CALLS_EXCEEDED",
+ "MAXIMUM_NUMBER_OF_COOKIES_EXCEEDED",
+ "PERSONAL_LOANS",
+ "UNSUPPORTED_FLASH_CONTENT"
],
"enumDescriptions": [
- "A placeholder for an undefined user status.",
- "A user who was already created but hasn't accepted the invitation yet.",
- "A user that is currently active.",
- "A user that is currently disabled."
+ "The length of the image animation is longer than allowed.",
+ "The click through URL doesn't work properly.",
+ "Something is wrong with the creative itself.",
+ "The ad makes a fourth party call to an unapproved vendor.",
+ "The ad targets consumers using remarketing lists and/or collects\ndata for subsequent use in retargeting, but does not correctly declare\nthat use.",
+ "Clicking on the ad leads to an error page.",
+ "The ad size when rendered does not match the declaration.",
+ "Ads with a white background require a border, which was missing.",
+ "The creative attempts to set cookies from a fourth party that is not\ncertified.",
+ "The creative sets an LSO object.",
+ "The ad serves a blank.",
+ "The ad uses rotation, but not all destination URLs were declared.",
+ "There is a problem with the way the click macro is used.",
+ "The ad technology declaration is not accurate.",
+ "The actual destination URL does not match the declared destination URL.",
+ "The declared expanding direction does not match the actual direction.",
+ "The ad does not expand in a supported direction.",
+ "The ad uses an expandable vendor that is not supported.",
+ "There was an issue with the expandable ad.",
+ "The ad uses a video vendor that is not supported.",
+ "The length of the video ad is not supported.",
+ "The format of the video ad is not supported.",
+ "There was an issue with the video ad.",
+ "The landing page does not conform to Ad Exchange policy.",
+ "The ad or the landing page may contain malware.",
+ "The ad contains adult images or video content.",
+ "The ad contains text that is unclear or inaccurate.",
+ "The ad promotes counterfeit designer goods.",
+ "The ad causes a popup window to appear.",
+ "The creative does not follow policies set for the RTB protocol.",
+ "The ad contains a URL that uses a numeric IP address for the domain.",
+ "The ad or landing page contains unacceptable content because it initiated\na software or executable download.",
+ "The ad set an unauthorized cookie on a Google domain.",
+ "Flash content found when no flash was declared.",
+ "SSL support declared but not working correctly.",
+ "Rich Media - Direct Download in Ad (ex. PDF download).",
+ "Maximum download size exceeded.",
+ "Bad Destination URL: Site Not Crawlable.",
+ "Bad URL: Legal disapproval.",
+ "Pharmaceuticals, Gambling, Alcohol not allowed and at least one was\ndetected.",
+ "Dynamic DNS at Destination URL.",
+ "Poor Image / Video Quality.",
+ "For example, Image Trick to Click.",
+ "Incorrect Image Layout.",
+ "Irrelevant Image / Video.",
+ "Broken back button.",
+ "Misleading/Inaccurate claims in ads.",
+ "Restricted Products.",
+ "Unacceptable content. For example, malware.",
+ "The ad automatically redirects to the destination site without a click,\nor reports a click when none were made.",
+ "The ad uses URL protocols that do not exist or are not allowed on AdX.",
+ "Restricted content (for example, alcohol) was found in the ad but not\ndeclared.",
+ "Violation of the remarketing list policy.",
+ "The destination site's robot.txt file prevents it from being crawled.",
+ "Click to download must link to an app.",
+ "A review extension must be an accurate review.",
+ "Sexually explicit content.",
+ "The ad tries to gain an unfair traffic advantage.",
+ "The ad tries to circumvent Google's advertising systems.",
+ "The ad promotes dangerous knives.",
+ "The ad promotes explosives.",
+ "The ad promotes guns & parts.",
+ "The ad promotes recreational drugs/services & related equipment.",
+ "The ad promotes tobacco products/services & related equipment.",
+ "The ad promotes weapons.",
+ "The ad is unclear or irrelevant to the destination site.",
+ "The ad does not meet professional standards.",
+ "The promotion is unnecessarily difficult to navigate.",
+ "Violation of Google's policy for interest-based ads.",
+ "Misuse of personal information.",
+ "Omission of relevant information.",
+ "Unavailable promotions.",
+ "Misleading or unrealistic promotions.",
+ "Offensive or inappropriate content.",
+ "Capitalizing on sensitive events.",
+ "Shocking content.",
+ "Products & Services that enable dishonest behavior.",
+ "The ad does not meet technical requirements.",
+ "Restricted political content.",
+ "Unsupported content.",
+ "Invalid bidding method.",
+ "Video length exceeds limits.",
+ "Unacceptable content: Japanese healthcare.",
+ "Online pharmacy ID required.",
+ "Unacceptable content: Abortion.",
+ "Unacceptable content: Birth control.",
+ "Restricted in China.",
+ "Unacceptable content: Korean healthcare.",
+ "Non-family safe or adult content.",
+ "Clinical trial recruitment.",
+ "Maximum number of HTTP calls exceeded.",
+ "Maximum number of cookies exceeded.",
+ "Financial service ad does not adhere to specifications.",
+ "Flash content was found in an unsupported context."
],
"type": "string"
},
- "userId": {
- "description": "The unique numerical ID of the client user\nthat has accepted an invitation.\nThe value of this field is ignored in an update operation.",
- "format": "int64",
- "type": "string"
- },
- "email": {
- "description": "User's email address. The value of this field\nis ignored in an update operation.",
- "type": "string"
- },
- "clientAccountId": {
- "description": "Numerical account ID of the client buyer\nwith which the user is associated; the\nbuyer must be a client of the current sponsor buyer.\nThe value of this field is ignored in an update operation.",
- "format": "int64",
- "type": "string"
- }
- },
- "type": "object"
- },
- "CreativeDealAssociation": {
- "description": "The association between a creative and a deal.",
- "id": "CreativeDealAssociation",
- "properties": {
- "accountId": {
- "description": "The account the creative belongs to.",
- "type": "string"
- },
- "creativeId": {
- "description": "The ID of the creative associated with the deal.",
- "type": "string"
- },
- "dealsId": {
- "description": "The externalDealId for the deal associated with the creative.",
- "type": "string"
- }
- },
- "type": "object"
- },
- "Creative": {
- "description": "A creative and its classification data.",
- "id": "Creative",
- "properties": {
- "detectedDomains": {
- "description": "@OutputOnly\nThe detected domains for this creative.",
- "items": {
- "type": "string"
- },
- "type": "array"
- },
- "detectedAdvertiserIds": {
- "description": "@OutputOnly Detected advertiser IDs, if any.",
+ "details": {
+ "description": "Additional details about the reason for disapproval.",
"items": {
- "format": "int64",
"type": "string"
},
"type": "array"
- },
- "filteringStats": {
- "$ref": "FilteringStats",
- "description": "@OutputOnly The filtering stats for this creative."
- },
- "attributes": {
- "description": "All attributes for the ads that may be shown from this creative.\nCan be used to filter the response of the\ncreatives.list\nmethod.",
- "enumDescriptions": [
- "Do not use. This is a placeholder value only.",
- "The creative is tagged.",
- "The creative is cookie targeted.",
- "The creative is user interest targeted.",
- "The creative does not expand.",
- "The creative expands up.",
- "The creative expands down.",
- "The creative expands left.",
- "The creative expands right.",
- "The creative expands up and left.",
- "The creative expands up and right.",
- "The creative expands down and left.",
- "The creative expands down and right.",
- "The creative expands up or down.",
- "The creative expands left or right.",
- "The creative expands on any diagonal.",
- "The creative expands when rolled over.",
- "The instream vast video type is vpaid flash.",
- "The creative is MRAID",
- "The creative is SSL.",
- "The creative is an interstitial.",
- "The creative is eligible for native.",
- "The creative is not eligible for native.",
- "The creative can dynamically resize to fill a variety of slot sizes."
- ],
- "items": {
- "enum": [
- "ATTRIBUTE_UNSPECIFIED",
- "IS_TAGGED",
- "IS_COOKIE_TARGETED",
- "IS_USER_INTEREST_TARGETED",
- "EXPANDING_DIRECTION_NONE",
- "EXPANDING_DIRECTION_UP",
- "EXPANDING_DIRECTION_DOWN",
- "EXPANDING_DIRECTION_LEFT",
- "EXPANDING_DIRECTION_RIGHT",
- "EXPANDING_DIRECTION_UP_LEFT",
- "EXPANDING_DIRECTION_UP_RIGHT",
- "EXPANDING_DIRECTION_DOWN_LEFT",
- "EXPANDING_DIRECTION_DOWN_RIGHT",
- "EXPANDING_DIRECTION_UP_OR_DOWN",
- "EXPANDING_DIRECTION_LEFT_OR_RIGHT",
- "EXPANDING_DIRECTION_ANY_DIAGONAL",
- "EXPANDING_ACTION_ROLLOVER_TO_EXPAND",
- "INSTREAM_VAST_VIDEO_TYPE_VPAID_FLASH",
- "RICH_MEDIA_CAPABILITY_TYPE_MRAID",
- "RICH_MEDIA_CAPABILITY_TYPE_SSL",
- "RICH_MEDIA_CAPABILITY_TYPE_INTERSTITIAL",
- "NATIVE_ELIGIBILITY_ELIGIBLE",
- "NATIVE_ELIGIBILITY_NOT_ELIGIBLE",
- "RENDERING_SIZELESS_ADX"
- ],
- "type": "string"
+ }
+ },
+ "type": "object"
+ },
+ "StopWatchingCreativeRequest": {
+ "description": "A request for stopping notifications for changes to creative Status.",
+ "id": "StopWatchingCreativeRequest",
+ "properties": {},
+ "type": "object"
+ },
+ "ServingRestriction": {
+ "description": "@OutputOnly A representation of the status of an ad in a\nspecific context. A context here relates to where something ultimately serves\n(for example, a user or publisher geo, a platform, an HTTPS vs HTTP request,\nor the type of auction).",
+ "id": "ServingRestriction",
+ "properties": {
+ "disapprovalReasons": {
+ "description": "Any disapprovals bound to this restriction.\nOnly present if status=DISAPPROVED.\nCan be used to filter the response of the\ncreatives.list\nmethod.",
+ "items": {
+ "$ref": "Disapproval"
},
"type": "array"
},
- "apiUpdateTime": {
- "description": "@OutputOnly The last update timestamp of the creative via API.",
- "format": "google-datetime",
- "type": "string"
- },
- "detectedLanguages": {
- "description": "@OutputOnly\nThe detected languages for this creative. The order is arbitrary. The codes\nare 2 or 5 characters and are documented at\nhttps://developers.google.com/adwords/api/docs/appendix/languagecodes.",
+ "contexts": {
+ "description": "The contexts for the restriction.",
"items": {
- "type": "string"
+ "$ref": "ServingContext"
},
"type": "array"
},
- "creativeId": {
- "description": "The buyer-defined creative ID of this creative.\nCan be used to filter the response of the\ncreatives.list\nmethod.",
- "type": "string"
- },
- "accountId": {
- "description": "The account that this creative belongs to.\nCan be used to filter the response of the\ncreatives.list\nmethod.",
+ "status": {
+ "description": "The status of the creative in this context (for example, it has been\nexplicitly disapproved or is pending review).",
+ "enum": [
+ "STATUS_UNSPECIFIED",
+ "DISAPPROVAL",
+ "PENDING_REVIEW"
+ ],
+ "enumDescriptions": [
+ "The status is not known.",
+ "The ad was disapproved in this context.",
+ "The ad is pending review in this context."
+ ],
"type": "string"
+ }
+ },
+ "type": "object"
+ },
+ "Date": {
+ "description": "Represents a whole calendar date, e.g. date of birth. The time of day and\ntime zone are either specified elsewhere or are not significant. The date\nis relative to the Proleptic Gregorian Calendar. The day may be 0 to\nrepresent a year and month where the day is not significant, e.g. credit card\nexpiration date. The year may be 0 to represent a month and day independent\nof year, e.g. anniversary date. Related types are google.type.TimeOfDay\nand `google.protobuf.Timestamp`.",
+ "id": "Date",
+ "properties": {
+ "month": {
+ "description": "Month of year. Must be from 1 to 12.",
+ "format": "int32",
+ "type": "integer"
},
- "native": {
- "$ref": "NativeContent",
- "description": "A native creative."
- },
- "video": {
- "$ref": "VideoContent",
- "description": "A video creative."
+ "year": {
+ "description": "Year of date. Must be from 1 to 9999, or 0 if specifying a date without\na year.",
+ "format": "int32",
+ "type": "integer"
},
- "servingRestrictions": {
- "description": "@OutputOnly The granular status of this ad in specific contexts.\nA context here relates to where something ultimately serves (for example,\na physical location, a platform, an HTTPS vs HTTP request, or the type\nof auction).",
+ "day": {
+ "description": "Day of month. Must be from 1 to 31 and valid for the year and month, or 0\nif specifying a year/month where the day is not significant.",
+ "format": "int32",
+ "type": "integer"
+ }
+ },
+ "type": "object"
+ },
+ "RowDimensions": {
+ "description": "A response may include multiple rows, breaking down along various dimensions.\nEncapsulates the values of all dimensions for a given row.",
+ "id": "RowDimensions",
+ "properties": {
+ "timeInterval": {
+ "$ref": "TimeInterval",
+ "description": "The time interval that this row represents."
+ }
+ },
+ "type": "object"
+ },
+ "Empty": {
+ "description": "A generic empty message that you can re-use to avoid defining duplicated\nempty messages in your APIs. A typical example is to use it as the request\nor the response type of an API method. For instance:\n\n service Foo {\n rpc Bar(google.protobuf.Empty) returns (google.protobuf.Empty);\n }\n\nThe JSON representation for `Empty` is empty JSON object `{}`.",
+ "id": "Empty",
+ "properties": {},
+ "type": "object"
+ },
+ "ListCreativeStatusAndCreativeBreakdownByDetailResponse": {
+ "description": "Response message for listing all details associated with a given filtered bid\nreason and a given creative.",
+ "id": "ListCreativeStatusAndCreativeBreakdownByDetailResponse",
+ "properties": {
+ "filteredBidDetailRows": {
+ "description": "List of rows, with counts of bids with a given creative status and\ncreative, aggregated by detail.",
"items": {
- "$ref": "ServingRestriction"
+ "$ref": "FilteredBidDetailRow"
},
"type": "array"
},
- "agencyId": {
- "description": "The agency ID for this creative.",
- "format": "int64",
+ "nextPageToken": {
+ "description": "A token to retrieve the next page of results.\nPass this value in the\nListCreativeStatusAndCreativeBreakdownByDetailRequest.pageToken\nfield in the subsequent call to the\naccounts.filterSets.filteredBids.creatives.details.list\nmethod to retrieve the next page of results.",
"type": "string"
},
- "clickThroughUrls": {
- "description": "The set of destination URLs for the creative.",
+ "detailType": {
+ "description": "The type of detail that the detail IDs represent.",
+ "enum": [
+ "TYPE_UNSPECIFIED",
+ "CREATIVE_ATTRIBUTE",
+ "VENDOR",
+ "SENSITIVE_CATEGORY",
+ "PRODUCT_CATEGORY"
+ ],
+ "enumDescriptions": [
+ "A placeholder for an undefined status.\nThis value will never be returned in responses.",
+ "Indicates that the detail ID refers to a creative attribute; see\n[publisher-excludable-creative-attributes](https://developers.google.com/ad-exchange/rtb/downloads/publisher-excludable-creative-attributes).",
+ "Indicates that the detail ID refers to a vendor; see\n[vendors](https://developers.google.com/ad-exchange/rtb/downloads/vendors).",
+ "Indicates that the detail ID refers to a sensitive category; see\n[ad-sensitive-categories](https://developers.google.com/ad-exchange/rtb/downloads/ad-sensitive-categories).",
+ "Indicates that the detail ID refers to a product category; see\n[ad-product-categories](https://developers.google.com/ad-exchange/rtb/downloads/ad-product-categories)."
+ ],
+ "type": "string"
+ }
+ },
+ "type": "object"
+ },
+ "AppContext": {
+ "description": "@OutputOnly The app type the restriction applies to for mobile device.",
+ "id": "AppContext",
+ "properties": {
+ "appTypes": {
+ "description": "The app types this restriction applies to.",
+ "enumDescriptions": [
+ "Native app context.",
+ "Mobile web app context."
+ ],
"items": {
+ "enum": [
+ "NATIVE",
+ "WEB"
+ ],
"type": "string"
},
"type": "array"
- },
- "adChoicesDestinationUrl": {
- "description": "The link to AdChoices destination page.",
- "type": "string"
- },
- "detectedSensitiveCategories": {
- "description": "@OutputOnly Detected sensitive categories, if any.\nSee the ad-sensitive-categories.txt file in the technical documentation for\na list of IDs. You should use these IDs along with the\nexcluded-sensitive-category field in the bid request to filter your bids.",
+ }
+ },
+ "type": "object"
+ },
+ "ListFilteredBidsResponse": {
+ "description": "Response message for listing all reasons that bids were filtered from the\nauction.",
+ "id": "ListFilteredBidsResponse",
+ "properties": {
+ "creativeStatusRows": {
+ "description": "List of rows, with counts of filtered bids aggregated by filtering reason\n(i.e. creative status).",
"items": {
- "format": "int32",
- "type": "integer"
+ "$ref": "CreativeStatusRow"
},
"type": "array"
},
- "restrictedCategories": {
- "description": "All restricted categories for the ads that may be shown from this creative.",
+ "nextPageToken": {
+ "description": "A token to retrieve the next page of results.\nPass this value in the\nListFilteredBidsRequest.pageToken\nfield in the subsequent call to the\naccounts.filterSets.filteredBids.list\nmethod to retrieve the next page of results.",
+ "type": "string"
+ }
+ },
+ "type": "object"
+ },
+ "SecurityContext": {
+ "description": "@OutputOnly A security context.",
+ "id": "SecurityContext",
+ "properties": {
+ "securities": {
+ "description": "The security types in this context.",
"enumDescriptions": [
- "The ad has no restricted categories",
- "The alcohol restricted category."
+ "Matches impressions that require insecure compatibility.",
+ "Matches impressions that require SSL compatibility."
],
"items": {
"enum": [
- "NO_RESTRICTED_CATEGORIES",
- "ALCOHOL"
+ "INSECURE",
+ "SSL"
],
"type": "string"
},
"type": "array"
+ }
+ },
+ "type": "object"
+ },
+ "HtmlContent": {
+ "description": "HTML content for a creative.",
+ "id": "HtmlContent",
+ "properties": {
+ "snippet": {
+ "description": "The HTML snippet that displays the ad when inserted in the web page.",
+ "type": "string"
},
- "corrections": {
- "description": "@OutputOnly Shows any corrections that were applied to this creative.",
- "items": {
- "$ref": "Correction"
- },
- "type": "array"
- },
- "version": {
- "description": "@OutputOnly The version of this creative.",
+ "height": {
+ "description": "The height of the HTML snippet in pixels.",
"format": "int32",
"type": "integer"
},
- "vendorIds": {
- "description": "All vendor IDs for the ads that may be shown from this creative.\nSee https://storage.googleapis.com/adx-rtb-dictionaries/vendors.txt\nfor possible values.",
- "items": {
- "format": "int32",
- "type": "integer"
- },
- "type": "array"
+ "width": {
+ "description": "The width of the HTML snippet in pixels.",
+ "format": "int32",
+ "type": "integer"
+ }
+ },
+ "type": "object"
+ },
+ "ListCreativesResponse": {
+ "description": "A response for listing creatives.",
+ "id": "ListCreativesResponse",
+ "properties": {
+ "nextPageToken": {
+ "description": "A token to retrieve the next page of results.\nPass this value in the\nListCreativesRequest.page_token\nfield in the subsequent call to `ListCreatives` method to retrieve the next\npage of results.",
+ "type": "string"
},
- "impressionTrackingUrls": {
- "description": "The set of URLs to be called to record an impression.",
+ "creatives": {
+ "description": "The list of creatives.",
"items": {
- "type": "string"
+ "$ref": "Creative"
},
"type": "array"
- },
- "html": {
- "$ref": "HtmlContent",
- "description": "An HTML creative."
- },
- "detectedProductCategories": {
- "description": "@OutputOnly Detected product categories, if any.\nSee the ad-product-categories.txt file in the technical documentation\nfor a list of IDs.",
+ }
+ },
+ "type": "object"
+ },
+ "ListFilteredBidRequestsResponse": {
+ "description": "Response message for listing all reasons that bid requests were filtered and\nnot sent to the buyer.",
+ "id": "ListFilteredBidRequestsResponse",
+ "properties": {
+ "calloutStatusRows": {
+ "description": "List of rows, with counts of filtered bid requests aggregated by callout\nstatus.",
"items": {
- "format": "int32",
- "type": "integer"
+ "$ref": "CalloutStatusRow"
},
"type": "array"
},
- "dealsStatus": {
- "description": "@OutputOnly The top-level deals status of this creative.\nIf disapproved, an entry for 'auctionType=DIRECT_DEALS' (or 'ALL') in\nserving_restrictions will also exist. Note\nthat this may be nuanced with other contextual restrictions, in which case,\nit may be preferable to read from serving_restrictions directly.\nCan be used to filter the response of the\ncreatives.list\nmethod.",
- "enum": [
- "STATUS_UNSPECIFIED",
- "NOT_CHECKED",
- "CONDITIONALLY_APPROVED",
- "APPROVED",
- "DISAPPROVED"
- ],
- "enumDescriptions": [
- "The status is unknown.",
- "The creative has not been checked.",
- "The creative has been conditionally approved.\nSee serving_restrictions for details.",
- "The creative has been approved.",
- "The creative has been disapproved."
- ],
- "type": "string"
- },
- "openAuctionStatus": {
- "description": "@OutputOnly The top-level open auction status of this creative.\nIf disapproved, an entry for 'auctionType = OPEN_AUCTION' (or 'ALL') in\nserving_restrictions will also exist. Note\nthat this may be nuanced with other contextual restrictions, in which case,\nit may be preferable to read from serving_restrictions directly.\nCan be used to filter the response of the\ncreatives.list\nmethod.",
- "enum": [
- "STATUS_UNSPECIFIED",
- "NOT_CHECKED",
- "CONDITIONALLY_APPROVED",
- "APPROVED",
- "DISAPPROVED"
- ],
- "enumDescriptions": [
- "The status is unknown.",
- "The creative has not been checked.",
- "The creative has been conditionally approved.\nSee serving_restrictions for details.",
- "The creative has been approved.",
- "The creative has been disapproved."
- ],
- "type": "string"
- },
- "advertiserName": {
- "description": "The name of the company being advertised in the creative.",
+ "nextPageToken": {
+ "description": "A token to retrieve the next page of results.\nPass this value in the\nListFilteredBidRequestsRequest.pageToken\nfield in the subsequent call to the\naccounts.filterSets.filteredBidRequests.list\nmethod to retrieve the next page of results.",
"type": "string"
}
},
"type": "object"
},
- "FilteringStats": {
- "description": "@OutputOnly Filtering reasons for this creative during a period of a single\nday (from midnight to midnight Pacific).",
- "id": "FilteringStats",
+ "ListBidMetricsResponse": {
+ "description": "Response message for listing the metrics that are measured in number of bids.",
+ "id": "ListBidMetricsResponse",
"properties": {
- "reasons": {
- "description": "The set of filtering reasons for this date.",
+ "bidMetricsRows": {
+ "description": "List of rows, each containing a set of bid metrics.",
"items": {
- "$ref": "Reason"
+ "$ref": "BidMetricsRow"
},
"type": "array"
},
- "date": {
- "$ref": "Date",
- "description": "The day during which the data was collected.\nThe data is collected from 00:00:00 to 23:59:59 PT.\nDuring switches from PST to PDT and back, the day may\ncontain 23 or 25 hours of data instead of the usual 24."
+ "nextPageToken": {
+ "description": "A token to retrieve the next page of results.\nPass this value in the\nListBidMetricsRequest.pageToken\nfield in the subsequent call to the\naccounts.filterSets.bidMetrics.list\nmethod to retrieve the next page of results.",
+ "type": "string"
}
},
"type": "object"
},
- "RemoveDealAssociationRequest": {
- "description": "A request for removing the association between a deal and a creative.",
- "id": "RemoveDealAssociationRequest",
+ "Reason": {
+ "description": "A specific filtering status and how many times it occurred.",
+ "id": "Reason",
"properties": {
- "association": {
- "$ref": "CreativeDealAssociation",
- "description": "The association between a creative and a deal that should be removed."
+ "count": {
+ "description": "The number of times the creative was filtered for the status. The\ncount is aggregated across all publishers on the exchange.",
+ "format": "int64",
+ "type": "string"
+ },
+ "status": {
+ "description": "The filtering status code. Please refer to the\n[creative-status-codes.txt](https://storage.googleapis.com/adx-rtb-dictionaries/creative-status-codes.txt)\nfile for different statuses.",
+ "format": "int32",
+ "type": "integer"
}
},
"type": "object"
},
- "Client": {
- "description": "A client resource represents a client buyer&mdash;an agency,\na brand, or an advertiser customer of the sponsor buyer.\nUsers associated with the client buyer have restricted access to\nthe Ad Exchange Marketplace and certain other sections\nof the Ad Exchange Buyer UI based on the role\ngranted to the client buyer.\nAll fields are required unless otherwise specified.",
- "id": "Client",
+ "ListLosingBidsResponse": {
+ "description": "Response message for listing all reasons that bids lost in the auction.",
+ "id": "ListLosingBidsResponse",
"properties": {
- "entityType": {
- "description": "The type of the client entity: `ADVERTISER`, `BRAND`, or `AGENCY`.",
- "enum": [
- "ENTITY_TYPE_UNSPECIFIED",
- "ADVERTISER",
- "BRAND",
- "AGENCY"
- ],
- "enumDescriptions": [
- "A placeholder for an undefined client entity type. Should not be used.",
- "An advertiser.",
- "A brand.",
- "An advertising agency."
- ],
- "type": "string"
+ "creativeStatusRows": {
+ "description": "List of rows, with counts of losing bids aggregated by loss reason (i.e.\ncreative status).",
+ "items": {
+ "$ref": "CreativeStatusRow"
+ },
+ "type": "array"
},
- "clientName": {
- "description": "Name used to represent this client to publishers.\nYou may have multiple clients that map to the same entity,\nbut for each client the combination of `clientName` and entity\nmust be unique.\nYou can specify this field as empty.",
+ "nextPageToken": {
+ "description": "A token to retrieve the next page of results.\nPass this value in the\nListLosingBidsRequest.pageToken\nfield in the subsequent call to the\naccounts.filterSets.losingBids.list\nmethod to retrieve the next page of results.",
"type": "string"
- },
- "role": {
- "description": "The role which is assigned to the client buyer. Each role implies a set of\npermissions granted to the client. Must be one of `CLIENT_DEAL_VIEWER`,\n`CLIENT_DEAL_NEGOTIATOR` or `CLIENT_DEAL_APPROVER`.",
- "enum": [
- "CLIENT_ROLE_UNSPECIFIED",
- "CLIENT_DEAL_VIEWER",
- "CLIENT_DEAL_NEGOTIATOR",
- "CLIENT_DEAL_APPROVER"
- ],
- "enumDescriptions": [
- "A placeholder for an undefined client role.",
- "Users associated with this client can see publisher deal offers\nin the Marketplace.\nThey can neither negotiate proposals nor approve deals.\nIf this client is visible to publishers, they can send deal proposals\nto this client.",
- "Users associated with this client can respond to deal proposals\nsent to them by publishers. They can also initiate deal proposals\nof their own.",
- "Users associated with this client can approve eligible deals\non your behalf. Some deals may still explicitly require publisher\nfinalization. If this role is not selected, the sponsor buyer\nwill need to manually approve each of their deals."
- ],
+ }
+ },
+ "type": "object"
+ },
+ "VideoContent": {
+ "description": "Video content for a creative.",
+ "id": "VideoContent",
+ "properties": {
+ "videoUrl": {
+ "description": "The URL to fetch a video ad.",
"type": "string"
+ }
+ },
+ "type": "object"
+ },
+ "ImpressionMetricsRow": {
+ "description": "The set of metrics that are measured in numbers of impressions, representing\nhow many impressions with the specified dimension values were considered\neligible at each stage of the bidding funnel.",
+ "id": "ImpressionMetricsRow",
+ "properties": {
+ "rowDimensions": {
+ "$ref": "RowDimensions",
+ "description": "The values of all dimensions associated with metric values in this row."
},
- "visibleToSeller": {
- "description": "Whether the client buyer will be visible to sellers.",
- "type": "boolean"
+ "availableImpressions": {
+ "$ref": "MetricValue",
+ "description": "The number of impressions available to the buyer on Ad Exchange.\nIn some cases this value may be unavailable."
},
- "entityId": {
- "description": "Numerical identifier of the client entity.\nThe entity can be an advertiser, a brand, or an agency.\nThis identifier is unique among all the entities with the same type.\n\nA list of all known advertisers with their identifiers is available in the\n[advertisers.txt](https://storage.googleapis.com/adx-rtb-dictionaries/advertisers.txt)\nfile.\n\nA list of all known brands with their identifiers is available in the\n[brands.txt](https://storage.googleapis.com/adx-rtb-dictionaries/brands.txt)\nfile.\n\nA list of all known agencies with their identifiers is available in the\n[agencies.txt](https://storage.googleapis.com/adx-rtb-dictionaries/agencies.txt)\nfile.",
- "format": "int64",
- "type": "string"
+ "bidRequests": {
+ "$ref": "MetricValue",
+ "description": "The number of impressions for which Ad Exchange sent the buyer a bid\nrequest."
},
- "clientAccountId": {
- "description": "The globally-unique numerical ID of the client.\nThe value of this field is ignored in create and update operations.",
- "format": "int64",
- "type": "string"
+ "inventoryMatches": {
+ "$ref": "MetricValue",
+ "description": "The number of impressions that match the buyer's inventory pretargeting."
},
- "entityName": {
- "description": "The name of the entity. This field is automatically fetched based on\nthe type and ID.\nThe value of this field is ignored in create and update operations.",
- "type": "string"
+ "responsesWithBids": {
+ "$ref": "MetricValue",
+ "description": "The number of impressions for which Ad Exchange received a response from\nthe buyer that contained at least one applicable bid."
},
- "status": {
- "description": "The status of the client buyer.",
- "enum": [
- "CLIENT_STATUS_UNSPECIFIED",
- "DISABLED",
- "ACTIVE"
- ],
+ "successfulResponses": {
+ "$ref": "MetricValue",
+ "description": "The number of impressions for which the buyer successfully sent a response\nto Ad Exchange."
+ }
+ },
+ "type": "object"
+ },
+ "AuctionContext": {
+ "description": "@OutputOnly The auction type the restriction applies to.",
+ "id": "AuctionContext",
+ "properties": {
+ "auctionTypes": {
+ "description": "The auction types this restriction applies to.",
"enumDescriptions": [
- "A placeholder for an undefined client status.",
- "A client that is currently disabled.",
- "A client that is currently active."
+ "The restriction applies to open auction.",
+ "The restriction applies to direct deals."
],
- "type": "string"
+ "items": {
+ "enum": [
+ "OPEN_AUCTION",
+ "DIRECT_DEALS"
+ ],
+ "type": "string"
+ },
+ "type": "array"
}
},
"type": "object"
},
- "Correction": {
- "description": "@OutputOnly Shows any corrections that were applied to this creative.",
- "id": "Correction",
+ "ListImpressionMetricsResponse": {
+ "description": "Response message for listing the metrics that are measured in number of\nimpressions.",
+ "id": "ListImpressionMetricsResponse",
"properties": {
- "details": {
- "description": "Additional details about what was corrected.",
+ "nextPageToken": {
+ "description": "A token to retrieve the next page of results.\nPass this value in the\nListImpressionMetricsRequest.pageToken\nfield in the subsequent call to the\naccounts.filterSets.impressionMetrics.list\nmethod to retrieve the next page of results.",
+ "type": "string"
+ },
+ "impressionMetricsRows": {
+ "description": "List of rows, each containing a set of impression metrics.",
"items": {
- "type": "string"
+ "$ref": "ImpressionMetricsRow"
},
"type": "array"
+ }
+ },
+ "type": "object"
+ },
+ "ImpressionStatusRow": {
+ "description": "The number of impressions with the specified dimension values that were\nfiltered due to the specified filtering status.",
+ "id": "ImpressionStatusRow",
+ "properties": {
+ "impressionCount": {
+ "$ref": "MetricValue",
+ "description": "The number of impressions that were filtered with the specified status."
},
- "type": {
- "description": "The type of correction that was applied to the creative.",
+ "status": {
+ "description": "The status for which impressions were filtered.",
"enum": [
- "CORRECTION_TYPE_UNSPECIFIED",
- "VENDOR_IDS_ADDED",
- "SSL_ATTRIBUTE_REMOVED",
- "FLASH_FREE_ATTRIBUTE_REMOVED",
- "FLASH_FREE_ATTRIBUTE_ADDED",
- "REQUIRED_ATTRIBUTE_ADDED",
- "REQUIRED_VENDOR_ADDED",
- "SSL_ATTRIBUTE_ADDED",
- "IN_BANNER_VIDEO_ATTRIBUTE_ADDED",
- "MRAID_ATTRIBUTE_ADDED",
- "FLASH_ATTRIBUTE_REMOVED",
- "VIDEO_IN_SNIPPET_ATTRIBUTE_ADDED"
+ "STATUS_UNSPECIFIED",
+ "PRETARGETING_CONFIGURATIONS"
],
"enumDescriptions": [
- "The correction type is unknown. Refer to the details for more information.",
- "The ad's declared vendors did not match the vendors that were detected.\nThe detected vendors were added.",
- "The ad had the SSL attribute declared but was not SSL-compliant.\nThe SSL attribute was removed.",
- "The ad was declared as Flash-free but contained Flash, so the Flash-free\nattribute was removed.",
- "The ad was not declared as Flash-free but it did not reference any flash\ncontent, so the Flash-free attribute was added.",
- "The ad did not declare a required creative attribute.\nThe attribute was added.",
- "The ad did not declare a required technology vendor.\nThe technology vendor was added.",
- "The ad did not declare the SSL attribute but was SSL-compliant, so the\nSSL attribute was added.",
- "Properties consistent with In-banner video were found, so an\nIn-Banner Video attribute was added.",
- "The ad makes calls to the MRAID API so the MRAID attribute was added.",
- "The ad unnecessarily declared the Flash attribute, so the Flash attribute\nwas removed.",
- "The ad contains video content."
+ "A placeholder for an undefined status.\nThis value will never be returned in responses.",
+ "The impression was filtered because it did not match the buyer's\npretargeting configurations."
],
"type": "string"
},
- "contexts": {
- "description": "The contexts for the correction.",
+ "rowDimensions": {
+ "$ref": "RowDimensions",
+ "description": "The values of all dimensions associated with metric values in this row."
+ }
+ },
+ "type": "object"
+ },
+ "BidMetricsRow": {
+ "description": "The set of metrics that are measured in numbers of bids, representing how\nmany bids with the specified dimension values were considered eligible at\neach stage of the bidding funnel;",
+ "id": "BidMetricsRow",
+ "properties": {
+ "rowDimensions": {
+ "$ref": "RowDimensions",
+ "description": "The values of all dimensions associated with metric values in this row."
+ },
+ "viewableImpressions": {
+ "$ref": "MetricValue",
+ "description": "The number of bids for which the corresponding impression was viewable (as\ndefined by Active View)."
+ },
+ "impressionsWon": {
+ "$ref": "MetricValue",
+ "description": "The number of bids that won an impression."
+ },
+ "bids": {
+ "$ref": "MetricValue",
+ "description": "The number of bids that Ad Exchange received from the buyer."
+ },
+ "billedImpressions": {
+ "$ref": "MetricValue",
+ "description": "The number of bids for which the buyer was billed."
+ },
+ "bidsInAuction": {
+ "$ref": "MetricValue",
+ "description": "The number of bids that were permitted to compete in the auction."
+ }
+ },
+ "type": "object"
+ },
+ "ListBidResponseErrorsResponse": {
+ "description": "Response message for listing all reasons that bid responses resulted in an\nerror.",
+ "id": "ListBidResponseErrorsResponse",
+ "properties": {
+ "calloutStatusRows": {
+ "description": "List of rows, with counts of bid responses aggregated by callout status.",
"items": {
- "$ref": "ServingContext"
+ "$ref": "CalloutStatusRow"
},
"type": "array"
+ },
+ "nextPageToken": {
+ "description": "A token to retrieve the next page of results.\nPass this value in the\nListBidResponseErrorsRequest.pageToken\nfield in the subsequent call to the\naccounts.filterSets.bidResponseErrors.list\nmethod to retrieve the next page of results.",
+ "type": "string"
+ }
+ },
+ "type": "object"
+ },
+ "CreativeStatusRow": {
+ "description": "The number of bids with the specified dimension values that did not win the\nauction (either were filtered pre-auction or lost the auction), as described\nby the specified creative status.",
+ "id": "CreativeStatusRow",
+ "properties": {
+ "rowDimensions": {
+ "$ref": "RowDimensions",
+ "description": "The values of all dimensions associated with metric values in this row."
+ },
+ "creativeStatusId": {
+ "description": "The ID of the creative status.\nSee [creative-status-codes](https://developers.google.com/ad-exchange/rtb/downloads/creative-status-codes).",
+ "format": "int32",
+ "type": "integer"
+ },
+ "bidCount": {
+ "$ref": "MetricValue",
+ "description": "The number of bids with the specified status."
+ }
+ },
+ "type": "object"
+ },
+ "RealtimeTimeRange": {
+ "description": "An open-ended realtime time range specified by the start timestamp.\nFor filter sets that specify a realtime time range RTB metrics continue to\nbe aggregated throughout the lifetime of the filter set.",
+ "id": "RealtimeTimeRange",
+ "properties": {
+ "startTimestamp": {
+ "description": "The start timestamp of the real-time RTB metrics aggregation.",
+ "format": "google-datetime",
+ "type": "string"
+ }
+ },
+ "type": "object"
+ },
+ "FilteredBidDetailRow": {
+ "description": "The number of filtered bids with the specified dimension values, among those\nfiltered due to the requested filtering reason (i.e. creative status), that\nhave the specified detail.",
+ "id": "FilteredBidDetailRow",
+ "properties": {
+ "rowDimensions": {
+ "$ref": "RowDimensions",
+ "description": "The values of all dimensions associated with metric values in this row."
+ },
+ "bidCount": {
+ "$ref": "MetricValue",
+ "description": "The number of bids with the specified detail."
+ },
+ "detailId": {
+ "description": "The ID of the detail. The associated value can be looked up in the\ndictionary file corresponding to the DetailType in the response message.",
+ "format": "int32",
+ "type": "integer"
+ }
+ },
+ "type": "object"
+ },
+ "AbsoluteDateRange": {
+ "description": "An absolute date range, specified by its start date and end date.\nThe supported range of dates begins 30 days before today and ends today.\nValidity checked upon filter set creation. If a filter set with an absolute\ndate range is run at a later date more than 30 days after start_date, it will\nfail.",
+ "id": "AbsoluteDateRange",
+ "properties": {
+ "startDate": {
+ "$ref": "Date",
+ "description": "The start date of the range (inclusive).\nMust be within the 30 days leading up to current date, and must be equal to\nor before end_date."
+ },
+ "endDate": {
+ "$ref": "Date",
+ "description": "The end date of the range (inclusive).\nMust be within the 30 days leading up to current date, and must be equal to\nor after start_date."
}
},
"type": "object"
@@ -1673,293 +2892,415 @@
},
"type": "object"
},
- "ListDealAssociationsResponse": {
- "description": "A response for listing creative and deal associations",
- "id": "ListDealAssociationsResponse",
+ "WatchCreativeRequest": {
+ "description": "A request for watching changes to creative Status.",
+ "id": "WatchCreativeRequest",
+ "properties": {
+ "topic": {
+ "description": "The Pub/Sub topic to publish notifications to.\nThis topic must already exist and must give permission to\nad-exchange-buyside-reports@google.com to write to the topic.\nThis should be the full resource name in\n\"projects/{project_id}/topics/{topic_id}\" format.",
+ "type": "string"
+ }
+ },
+ "type": "object"
+ },
+ "TimeInterval": {
+ "description": "An interval of time, with an absolute start and end.\nThis is included in the response, for several reasons:\n1) The request may have specified start or end times relative to the time the\n request was sent; the response indicates the corresponding absolute time\n interval.\n2) The request may have specified an end time past the latest time for which\n data was available (e.g. if requesting data for the today); the response\n indicates the latest time for which data was actually returned.\n3) The response data for a single request may be broken down into multiple\n time intervals, if a time series was requested.",
+ "id": "TimeInterval",
+ "properties": {
+ "endTime": {
+ "description": "The timestamp marking the end of the range (exclusive) for which data is\nincluded.",
+ "format": "google-datetime",
+ "type": "string"
+ },
+ "startTime": {
+ "description": "The timestamp marking the start of the range (inclusive) for which data is\nincluded.",
+ "format": "google-datetime",
+ "type": "string"
+ }
+ },
+ "type": "object"
+ },
+ "FilteredBidCreativeRow": {
+ "description": "The number of filtered bids with the specified dimension values that have the\nspecified creative.",
+ "id": "FilteredBidCreativeRow",
+ "properties": {
+ "rowDimensions": {
+ "$ref": "RowDimensions",
+ "description": "The values of all dimensions associated with metric values in this row."
+ },
+ "bidCount": {
+ "$ref": "MetricValue",
+ "description": "The number of bids with the specified creative."
+ },
+ "creativeId": {
+ "description": "The ID of the creative.",
+ "type": "string"
+ }
+ },
+ "type": "object"
+ },
+ "RelativeDateRange": {
+ "description": "A relative date range, specified by an offset and a duration.\nThe supported range of dates begins 30 days before today and ends today.\nI.e. the limits for these values are:\noffset_days >= 0\nduration_days >= 1\noffset_days + duration_days <= 30",
+ "id": "RelativeDateRange",
"properties": {
- "nextPageToken": {
- "description": "A token to retrieve the next page of results.\nPass this value in the\nListDealAssociationsRequest.page_token\nfield in the subsequent call to 'ListDealAssociation' method to retrieve\nthe next page of results.",
- "type": "string"
+ "durationDays": {
+ "description": "The number of days in the requested date range. E.g. for a range spanning\ntoday, 1. For a range spanning the last 7 days, 7.",
+ "format": "int32",
+ "type": "integer"
},
- "associations": {
- "description": "The list of associations.",
- "items": {
- "$ref": "CreativeDealAssociation"
- },
- "type": "array"
+ "offsetDays": {
+ "description": "The end date of the filter set, specified as the number of days before\ntoday. E.g. for a range where the last date is today, 0.",
+ "format": "int32",
+ "type": "integer"
}
},
"type": "object"
},
- "StopWatchingCreativeRequest": {
- "description": "A request for stopping notifications for changes to creative Status.",
- "id": "StopWatchingCreativeRequest",
- "properties": {},
- "type": "object"
- },
- "Disapproval": {
- "description": "@OutputOnly The reason and details for a disapproval.",
- "id": "Disapproval",
+ "NativeContent": {
+ "description": "Native content for a creative.",
+ "id": "NativeContent",
"properties": {
- "details": {
- "description": "Additional details about the reason for disapproval.",
- "items": {
- "type": "string"
- },
- "type": "array"
+ "advertiserName": {
+ "description": "The name of the advertiser or sponsor, to be displayed in the ad creative.",
+ "type": "string"
},
- "reason": {
- "description": "The categorized reason for disapproval.",
- "enum": [
- "LENGTH_OF_IMAGE_ANIMATION",
- "BROKEN_URL",
- "MEDIA_NOT_FUNCTIONAL",
- "INVALID_FOURTH_PARTY_CALL",
- "INCORRECT_REMARKETING_DECLARATION",
- "LANDING_PAGE_ERROR",
- "AD_SIZE_DOES_NOT_MATCH_AD_SLOT",
- "NO_BORDER",
- "FOURTH_PARTY_BROWSER_COOKIES",
- "LSO_OBJECTS",
- "BLANK_CREATIVE",
- "DESTINATION_URLS_UNDECLARED",
- "PROBLEM_WITH_CLICK_MACRO",
- "INCORRECT_AD_TECHNOLOGY_DECLARATION",
- "INCORRECT_DESTINATION_URL_DECLARATION",
- "EXPANDABLE_INCORRECT_DIRECTION",
- "EXPANDABLE_DIRECTION_NOT_SUPPORTED",
- "EXPANDABLE_INVALID_VENDOR",
- "EXPANDABLE_FUNCTIONALITY",
- "VIDEO_INVALID_VENDOR",
- "VIDEO_UNSUPPORTED_LENGTH",
- "VIDEO_UNSUPPORTED_FORMAT",
- "VIDEO_FUNCTIONALITY",
- "LANDING_PAGE_DISABLED",
- "MALWARE_SUSPECTED",
- "ADULT_IMAGE_OR_VIDEO",
- "INACCURATE_AD_TEXT",
- "COUNTERFEIT_DESIGNER_GOODS",
- "POP_UP",
- "INVALID_RTB_PROTOCOL_USAGE",
- "RAW_IP_ADDRESS_IN_SNIPPET",
- "UNACCEPTABLE_CONTENT_SOFTWARE",
- "UNAUTHORIZED_COOKIE_ON_GOOGLE_DOMAIN",
- "UNDECLARED_FLASH_OBJECTS",
- "INVALID_SSL_DECLARATION",
- "DIRECT_DOWNLOAD_IN_AD",
- "MAXIMUM_DOWNLOAD_SIZE_EXCEEDED",
- "DESTINATION_URL_SITE_NOT_CRAWLABLE",
- "BAD_URL_LEGAL_DISAPPROVAL",
- "PHARMA_GAMBLING_ALCOHOL_NOT_ALLOWED",
- "DYNAMIC_DNS_AT_DESTINATION_URL",
- "POOR_IMAGE_OR_VIDEO_QUALITY",
- "UNACCEPTABLE_IMAGE_CONTENT",
- "INCORRECT_IMAGE_LAYOUT",
- "IRRELEVANT_IMAGE_OR_VIDEO",
- "DESTINATION_SITE_DOES_NOT_ALLOW_GOING_BACK",
- "MISLEADING_CLAIMS_IN_AD",
- "RESTRICTED_PRODUCTS",
- "UNACCEPTABLE_CONTENT",
- "AUTOMATED_AD_CLICKING",
- "INVALID_URL_PROTOCOL",
- "UNDECLARED_RESTRICTED_CONTENT",
- "INVALID_REMARKETING_LIST_USAGE",
- "DESTINATION_SITE_NOT_CRAWLABLE_ROBOTS_TXT",
- "CLICK_TO_DOWNLOAD_NOT_AN_APP",
- "INACCURATE_REVIEW_EXTENSION",
- "SEXUALLY_EXPLICIT_CONTENT",
- "GAINING_AN_UNFAIR_ADVANTAGE",
- "GAMING_THE_GOOGLE_NETWORK",
- "DANGEROUS_PRODUCTS_KNIVES",
- "DANGEROUS_PRODUCTS_EXPLOSIVES",
- "DANGEROUS_PRODUCTS_GUNS",
- "DANGEROUS_PRODUCTS_DRUGS",
- "DANGEROUS_PRODUCTS_TOBACCO",
- "DANGEROUS_PRODUCTS_WEAPONS",
- "UNCLEAR_OR_IRRELEVANT_AD",
- "PROFESSIONAL_STANDARDS",
- "DYSFUNCTIONAL_PROMOTION",
- "INVALID_INTEREST_BASED_AD",
- "MISUSE_OF_PERSONAL_INFORMATION",
- "OMISSION_OF_RELEVANT_INFORMATION",
- "UNAVAILABLE_PROMOTIONS",
- "MISLEADING_PROMOTIONS",
- "INAPPROPRIATE_CONTENT",
- "SENSITIVE_EVENTS",
- "SHOCKING_CONTENT",
- "ENABLING_DISHONEST_BEHAVIOR",
- "TECHNICAL_REQUIREMENTS",
- "RESTRICTED_POLITICAL_CONTENT",
- "UNSUPPORTED_CONTENT",
- "INVALID_BIDDING_METHOD",
- "VIDEO_TOO_LONG",
- "VIOLATES_JAPANESE_PHARMACY_LAW",
- "UNACCREDITED_PET_PHARMACY",
- "ABORTION",
- "CONTRACEPTIVES",
- "NEED_CERTIFICATES_TO_ADVERTISE_IN_CHINA",
- "KCDSP_REGISTRATION",
- "NOT_FAMILY_SAFE",
- "CLINICAL_TRIAL_RECRUITMENT",
- "MAXIMUM_NUMBER_OF_HTTP_CALLS_EXCEEDED",
- "MAXIMUM_NUMBER_OF_COOKIES_EXCEEDED",
- "PERSONAL_LOANS",
- "UNSUPPORTED_FLASH_CONTENT"
- ],
- "enumDescriptions": [
- "The length of the image animation is longer than allowed.",
- "The click through URL doesn't work properly.",
- "Something is wrong with the creative itself.",
- "The ad makes a fourth party call to an unapproved vendor.",
- "The ad targets consumers using remarketing lists and/or collects\ndata for subsequent use in retargeting, but does not correctly declare\nthat use.",
- "Clicking on the ad leads to an error page.",
- "The ad size when rendered does not match the declaration.",
- "Ads with a white background require a border, which was missing.",
- "The creative attempts to set cookies from a fourth party that is not\ncertified.",
- "The creative sets an LSO object.",
- "The ad serves a blank.",
- "The ad uses rotation, but not all destination URLs were declared.",
- "There is a problem with the way the click macro is used.",
- "The ad technology declaration is not accurate.",
- "The actual destination URL does not match the declared destination URL.",
- "The declared expanding direction does not match the actual direction.",
- "The ad does not expand in a supported direction.",
- "The ad uses an expandable vendor that is not supported.",
- "There was an issue with the expandable ad.",
- "The ad uses a video vendor that is not supported.",
- "The length of the video ad is not supported.",
- "The format of the video ad is not supported.",
- "There was an issue with the video ad.",
- "The landing page does not conform to Ad Exchange policy.",
- "The ad or the landing page may contain malware.",
- "The ad contains adult images or video content.",
- "The ad contains text that is unclear or inaccurate.",
- "The ad promotes counterfeit designer goods.",
- "The ad causes a popup window to appear.",
- "The creative does not follow policies set for the RTB protocol.",
- "The ad contains a URL that uses a numeric IP address for the domain.",
- "The ad or landing page contains unacceptable content because it initiated\na software or executable download.",
- "The ad set an unauthorized cookie on a Google domain.",
- "Flash content found when no flash was declared.",
- "SSL support declared but not working correctly.",
- "Rich Media - Direct Download in Ad (ex. PDF download).",
- "Maximum download size exceeded.",
- "Bad Destination URL: Site Not Crawlable.",
- "Bad URL: Legal disapproval.",
- "Pharmaceuticals, Gambling, Alcohol not allowed and at least one was\ndetected.",
- "Dynamic DNS at Destination URL.",
- "Poor Image / Video Quality.",
- "For example, Image Trick to Click.",
- "Incorrect Image Layout.",
- "Irrelevant Image / Video.",
- "Broken back button.",
- "Misleading/Inaccurate claims in ads.",
- "Restricted Products.",
- "Unacceptable content. For example, malware.",
- "The ad automatically redirects to the destination site without a click,\nor reports a click when none were made.",
- "The ad uses URL protocols that do not exist or are not allowed on AdX.",
- "Restricted content (for example, alcohol) was found in the ad but not\ndeclared.",
- "Violation of the remarketing list policy.",
- "The destination site's robot.txt file prevents it from being crawled.",
- "Click to download must link to an app.",
- "A review extension must be an accurate review.",
- "Sexually explicit content.",
- "The ad tries to gain an unfair traffic advantage.",
- "The ad tries to circumvent Google's advertising systems.",
- "The ad promotes dangerous knives.",
- "The ad promotes explosives.",
- "The ad promotes guns & parts.",
- "The ad promotes recreational drugs/services & related equipment.",
- "The ad promotes tobacco products/services & related equipment.",
- "The ad promotes weapons.",
- "The ad is unclear or irrelevant to the destination site.",
- "The ad does not meet professional standards.",
- "The promotion is unnecessarily difficult to navigate.",
- "Violation of Google's policy for interest-based ads.",
- "Misuse of personal information.",
- "Omission of relevant information.",
- "Unavailable promotions.",
- "Misleading or unrealistic promotions.",
- "Offensive or inappropriate content.",
- "Capitalizing on sensitive events.",
- "Shocking content.",
- "Products & Services that enable dishonest behavior.",
- "The ad does not meet technical requirements.",
- "Restricted political content.",
- "Unsupported content.",
- "Invalid bidding method.",
- "Video length exceeds limits.",
- "Unacceptable content: Japanese healthcare.",
- "Online pharmacy ID required.",
- "Unacceptable content: Abortion.",
- "Unacceptable content: Birth control.",
- "Restricted in China.",
- "Unacceptable content: Korean healthcare.",
- "Non-family safe or adult content.",
- "Clinical trial recruitment.",
- "Maximum number of HTTP calls exceeded.",
- "Maximum number of cookies exceeded.",
- "Financial service ad does not adhere to specifications.",
- "Flash content was found in an unsupported context."
+ "storeUrl": {
+ "description": "The URL to the app store to purchase/download the promoted app.",
+ "type": "string"
+ },
+ "headline": {
+ "description": "A short title for the ad.",
+ "type": "string"
+ },
+ "appIcon": {
+ "$ref": "Image",
+ "description": "The app icon, for app download ads."
+ },
+ "callToAction": {
+ "description": "A label for the button that the user is supposed to click.",
+ "type": "string"
+ },
+ "body": {
+ "description": "A long description of the ad.",
+ "type": "string"
+ },
+ "starRating": {
+ "description": "The app rating in the app store. Must be in the range [0-5].",
+ "format": "double",
+ "type": "number"
+ },
+ "videoUrl": {
+ "description": "The URL to fetch a native video ad.",
+ "type": "string"
+ },
+ "logo": {
+ "$ref": "Image",
+ "description": "A smaller image, for the advertiser's logo."
+ },
+ "clickLinkUrl": {
+ "description": "The URL that the browser/SDK will load when the user clicks the ad.",
+ "type": "string"
+ },
+ "priceDisplayText": {
+ "description": "The price of the promoted app including currency info.",
+ "type": "string"
+ },
+ "clickTrackingUrl": {
+ "description": "The URL to use for click tracking.",
+ "type": "string"
+ },
+ "image": {
+ "$ref": "Image",
+ "description": "A large image."
+ }
+ },
+ "type": "object"
+ },
+ "ListClientsResponse": {
+ "id": "ListClientsResponse",
+ "properties": {
+ "nextPageToken": {
+ "description": "A token to retrieve the next page of results.\nPass this value in the\nListClientsRequest.pageToken\nfield in the subsequent call to the\naccounts.clients.list method\nto retrieve the next page of results.",
+ "type": "string"
+ },
+ "clients": {
+ "description": "The returned list of clients.",
+ "items": {
+ "$ref": "Client"
+ },
+ "type": "array"
+ }
+ },
+ "type": "object"
+ },
+ "ListBidResponsesWithoutBidsResponse": {
+ "description": "Response message for listing all reasons that bid responses were considered\nto have no applicable bids.",
+ "id": "ListBidResponsesWithoutBidsResponse",
+ "properties": {
+ "bidResponseWithoutBidsStatusRows": {
+ "description": "List of rows, with counts of bid responses without bids aggregated by\nstatus.",
+ "items": {
+ "$ref": "BidResponseWithoutBidsStatusRow"
+ },
+ "type": "array"
+ },
+ "nextPageToken": {
+ "description": "A token to retrieve the next page of results.\nPass this value in the\nListBidResponsesWithoutBidsRequest.pageToken\nfield in the subsequent call to the\naccounts.filterSets.bidResponsesWithoutBids.list\nmethod to retrieve the next page of results.",
+ "type": "string"
+ }
+ },
+ "type": "object"
+ },
+ "ServingContext": {
+ "description": "The serving context for this restriction.",
+ "id": "ServingContext",
+ "properties": {
+ "auctionType": {
+ "$ref": "AuctionContext",
+ "description": "Matches impressions for a particular auction type."
+ },
+ "all": {
+ "description": "Matches all contexts.",
+ "enum": [
+ "SIMPLE_CONTEXT"
+ ],
+ "enumDescriptions": [
+ "A simple context."
],
"type": "string"
+ },
+ "appType": {
+ "$ref": "AppContext",
+ "description": "Matches impressions for a particular app type."
+ },
+ "securityType": {
+ "$ref": "SecurityContext",
+ "description": "Matches impressions for a particular security type."
+ },
+ "platform": {
+ "$ref": "PlatformContext",
+ "description": "Matches impressions coming from a particular platform."
+ },
+ "location": {
+ "$ref": "LocationContext",
+ "description": "Matches impressions coming from users *or* publishers in a specific\nlocation."
}
},
"type": "object"
},
- "ServingRestriction": {
- "description": "@OutputOnly A representation of the status of an ad in a\nspecific context. A context here relates to where something ultimately serves\n(for example, a user or publisher geo, a platform, an HTTPS vs HTTP request,\nor the type of auction).",
- "id": "ServingRestriction",
+ "Image": {
+ "description": "An image resource. You may provide a larger image than was requested,\nso long as the aspect ratio is preserved.",
+ "id": "Image",
+ "properties": {
+ "height": {
+ "description": "Image height in pixels.",
+ "format": "int32",
+ "type": "integer"
+ },
+ "width": {
+ "description": "Image width in pixels.",
+ "format": "int32",
+ "type": "integer"
+ },
+ "url": {
+ "description": "The URL of the image.",
+ "type": "string"
+ }
+ },
+ "type": "object"
+ },
+ "ListFilterSetsResponse": {
+ "description": "Response message for listing filter sets.",
+ "id": "ListFilterSetsResponse",
+ "properties": {
+ "filterSets": {
+ "description": "The filter sets belonging to the buyer.",
+ "items": {
+ "$ref": "FilterSet"
+ },
+ "type": "array"
+ },
+ "nextPageToken": {
+ "description": "A token to retrieve the next page of results.\nPass this value in the\nListFilterSetsRequest.pageToken\nfield in the subsequent call to the\naccounts.filterSets.list\nmethod to retrieve the next page of results.",
+ "type": "string"
+ }
+ },
+ "type": "object"
+ },
+ "BidResponseWithoutBidsStatusRow": {
+ "description": "The number of impressions with the specified dimension values that were\nconsidered to have no applicable bids, as described by the specified status.",
+ "id": "BidResponseWithoutBidsStatusRow",
"properties": {
+ "impressionCount": {
+ "$ref": "MetricValue",
+ "description": "The number of impressions for which there was a bid response with the\nspecified status."
+ },
"status": {
- "description": "The status of the creative in this context (for example, it has been\nexplicitly disapproved or is pending review).",
+ "description": "The status that caused the bid response to be considered to have no\napplicable bids.",
"enum": [
"STATUS_UNSPECIFIED",
- "DISAPPROVAL",
- "PENDING_REVIEW"
+ "RESPONSES_WITHOUT_BIDS",
+ "RESPONSES_WITHOUT_BIDS_FOR_ACCOUNT",
+ "RESPONSES_WITHOUT_BIDS_FOR_DEAL"
],
"enumDescriptions": [
- "The status is not known.",
- "The ad was disapproved in this context.",
- "The ad is pending review in this context."
+ "A placeholder for an undefined status.\nThis value will never be returned in responses.",
+ "The response had no bids.",
+ "The response had no bids for the specified account, though it may have\nincluded bids on behalf of other accounts.",
+ "The response had no bids for the specified deal, though it may have\nincluded bids on other deals on behalf of the account to which the deal\nbelongs."
],
"type": "string"
},
- "disapprovalReasons": {
- "description": "Any disapprovals bound to this restriction.\nOnly present if status=DISAPPROVED.\nCan be used to filter the response of the\ncreatives.list\nmethod.",
+ "rowDimensions": {
+ "$ref": "RowDimensions",
+ "description": "The values of all dimensions associated with metric values in this row."
+ }
+ },
+ "type": "object"
+ },
+ "ClientUserInvitation": {
+ "description": "An invitation for a new client user to get access to the Ad Exchange\nBuyer UI.\nAll fields are required unless otherwise specified.",
+ "id": "ClientUserInvitation",
+ "properties": {
+ "invitationId": {
+ "description": "The unique numerical ID of the invitation that is sent to the user.\nThe value of this field is ignored in create operations.",
+ "format": "int64",
+ "type": "string"
+ },
+ "email": {
+ "description": "The email address to which the invitation is sent. Email\naddresses should be unique among all client users under each sponsor\nbuyer.",
+ "type": "string"
+ },
+ "clientAccountId": {
+ "description": "Numerical account ID of the client buyer\nthat the invited user is associated with.\nThe value of this field is ignored in create operations.",
+ "format": "int64",
+ "type": "string"
+ }
+ },
+ "type": "object"
+ },
+ "ListCreativeStatusBreakdownByDetailResponse": {
+ "description": "Response message for listing all details associated with a given filtered bid\nreason.",
+ "id": "ListCreativeStatusBreakdownByDetailResponse",
+ "properties": {
+ "detailType": {
+ "description": "The type of detail that the detail IDs represent.",
+ "enum": [
+ "TYPE_UNSPECIFIED",
+ "CREATIVE_ATTRIBUTE",
+ "VENDOR",
+ "SENSITIVE_CATEGORY",
+ "PRODUCT_CATEGORY"
+ ],
+ "enumDescriptions": [
+ "A placeholder for an undefined status.\nThis value will never be returned in responses.",
+ "Indicates that the detail ID refers to a creative attribute; see\n[publisher-excludable-creative-attributes](https://developers.google.com/ad-exchange/rtb/downloads/publisher-excludable-creative-attributes).",
+ "Indicates that the detail ID refers to a vendor; see\n[vendors](https://developers.google.com/ad-exchange/rtb/downloads/vendors).",
+ "Indicates that the detail ID refers to a sensitive category; see\n[ad-sensitive-categories](https://developers.google.com/ad-exchange/rtb/downloads/ad-sensitive-categories).",
+ "Indicates that the detail ID refers to a product category; see\n[ad-product-categories](https://developers.google.com/ad-exchange/rtb/downloads/ad-product-categories)."
+ ],
+ "type": "string"
+ },
+ "filteredBidDetailRows": {
+ "description": "List of rows, with counts of bids with a given creative status aggregated\nby detail.",
"items": {
- "$ref": "Disapproval"
+ "$ref": "FilteredBidDetailRow"
},
"type": "array"
},
- "contexts": {
- "description": "The contexts for the restriction.",
+ "nextPageToken": {
+ "description": "A token to retrieve the next page of results.\nPass this value in the\nListCreativeStatusBreakdownByDetailRequest.pageToken\nfield in the subsequent call to the\naccounts.filterSets.filteredBids.details.list\nmethod to retrieve the next page of results.",
+ "type": "string"
+ }
+ },
+ "type": "object"
+ },
+ "ListClientUsersResponse": {
+ "id": "ListClientUsersResponse",
+ "properties": {
+ "nextPageToken": {
+ "description": "A token to retrieve the next page of results.\nPass this value in the\nListClientUsersRequest.pageToken\nfield in the subsequent call to the\nclients.invitations.list\nmethod to retrieve the next\npage of results.",
+ "type": "string"
+ },
+ "users": {
+ "description": "The returned list of client users.",
"items": {
- "$ref": "ServingContext"
+ "$ref": "ClientUser"
},
"type": "array"
}
},
"type": "object"
},
- "Date": {
- "description": "Represents a whole calendar date, e.g. date of birth. The time of day and\ntime zone are either specified elsewhere or are not significant. The date\nis relative to the Proleptic Gregorian Calendar. The day may be 0 to\nrepresent a year and month where the day is not significant, e.g. credit card\nexpiration date. The year may be 0 to represent a month and day independent\nof year, e.g. anniversary date. Related types are google.type.TimeOfDay\nand `google.protobuf.Timestamp`.",
- "id": "Date",
+ "ListClientUserInvitationsResponse": {
+ "id": "ListClientUserInvitationsResponse",
"properties": {
- "month": {
- "description": "Month of year. Must be from 1 to 12.",
- "format": "int32",
- "type": "integer"
+ "nextPageToken": {
+ "description": "A token to retrieve the next page of results.\nPass this value in the\nListClientUserInvitationsRequest.pageToken\nfield in the subsequent call to the\nclients.invitations.list\nmethod to retrieve the next\npage of results.",
+ "type": "string"
},
- "year": {
- "description": "Year of date. Must be from 1 to 9999, or 0 if specifying a date without\na year.",
- "format": "int32",
- "type": "integer"
+ "invitations": {
+ "description": "The returned list of client users.",
+ "items": {
+ "$ref": "ClientUserInvitation"
+ },
+ "type": "array"
+ }
+ },
+ "type": "object"
+ },
+ "LocationContext": {
+ "description": "@OutputOnly The Geo criteria the restriction applies to.",
+ "id": "LocationContext",
+ "properties": {
+ "geoCriteriaIds": {
+ "description": "IDs representing the geo location for this context.\nPlease refer to the\n[geo-table.csv](https://storage.googleapis.com/adx-rtb-dictionaries/geo-table.csv)\nfile for different geo criteria IDs.",
+ "items": {
+ "format": "int32",
+ "type": "integer"
+ },
+ "type": "array"
+ }
+ },
+ "type": "object"
+ },
+ "PlatformContext": {
+ "description": "@OutputOnly The type of platform the restriction applies to.",
+ "id": "PlatformContext",
+ "properties": {
+ "platforms": {
+ "description": "The platforms this restriction applies to.",
+ "enumDescriptions": [
+ "Desktop platform.",
+ "Android platform.",
+ "iOS platform."
+ ],
+ "items": {
+ "enum": [
+ "DESKTOP",
+ "ANDROID",
+ "IOS"
+ ],
+ "type": "string"
+ },
+ "type": "array"
+ }
+ },
+ "type": "object"
+ },
+ "MetricValue": {
+ "description": "A metric value, with an expected value and a variance; represents a count\nthat may be either exact or estimated (i.e. when sampled).",
+ "id": "MetricValue",
+ "properties": {
+ "variance": {
+ "description": "The variance (i.e. square of the standard deviation) of the metric value.\nIf value is exact, variance is 0.\nCan be used to calculate margin of error as a percentage of value, using\nthe following formula, where Z is the standard constant that depends on the\ndesired size of the confidence interval (e.g. for 90% confidence interval,\nuse Z = 1.645):\n\n marginOfError = 100 * Z * sqrt(variance) / value",
+ "format": "int64",
+ "type": "string"
},
- "day": {
- "description": "Day of month. Must be from 1 to 31 and valid for the year and month, or 0\nif specifying a year/month where the day is not significant.",
- "format": "int32",
- "type": "integer"
+ "value": {
+ "description": "The expected value of the metric.",
+ "format": "int64",
+ "type": "string"
}
},
"type": "object"
« no previous file with comments | « discovery/googleapis/youtubereporting__v1.json ('k') | discovery/googleapis_beta/appengine__v1beta.json » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698